[prev in list] [next in list] [prev in thread] [next in thread]
List: slide-user
Subject: Can't remove a structure node
From: Dorel bruno <bd.ais40 () wanadoo ! fr>
Date: 2007-03-23 15:57:18
Message-ID: 4603FB3C.2050500 () wanadoo ! fr
[Download RAW message or body]
Hi all
I try tu use Slide API to add and remove file to a file repository :
when I try to remove a node in structure I get :
23 Mar 2007 15:13:29 - org.apache.slide.security.ACLSecurityImpl -
WARNING - permission [object=/documents, subject=/roles/user,
action=/actions/write, ->GRANT, INHERITABLE]
23 Mar 2007 15:13:29 - org.apache.slide.security.ACLSecurityImpl -
WARNING - permission=[object=/documents, subject=/roles/user,
action=/actions/write, ->GRANT, INHERITABLE], match=true
23 Mar 2007 15:13:29 -
org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter - ERROR -
org.postgresql.util.PSQLException: ERROR: update or delete on
"version_history" violates foreign key constraint "$1" on "properties"
org.postgresql.util.PSQLException: ERROR: update or delete on
"version_history" violates foreign key constraint "$1" on "properties"
at
org.postgresql.util.PSQLException.parseServerError(PSQLException.java:139)
at org.postgresql.core.QueryExecutor.executeV3(QueryExecutor.java:152)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:100)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:43)
at
org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.java:517)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:50)
at
org.postgresql.jdbc1.AbstractJdbc1Statement.executeUpdate(AbstractJdbc1Statement.java:273)
at
org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
at
org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter.removeObject(PostgresRDBMSAdapter.java:93)
at
org.apache.slide.store.impl.rdbms.AbstractRDBMSStore.removeObject(AbstractRDBMSStore.java:458)
at
org.apache.slide.store.AbstractStore.removeObject(AbstractStore.java:803)
at
org.apache.slide.store.ExtendedStore.removeObject(ExtendedStore.java:684)
Here is my call to structure.remove
at
org.apache.slide.structure.StructureImpl.remove(StructureImpl.java:547)
at
sas.slideAPI.serveur.GestionDeContenuImpl.supprimeDocument(GestionDeContenuImpl.java:653)
at
sas.slideAPI.commun.corba.GestionDeContenuPOATie.supprimeDocument(GestionDeContenuPOATie.java:53)
at
sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:101)
at
sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:41)
at com.inprise.vbroker.poa.POAImpl.invoke(POAImpl.java:2822)
at
com.inprise.vbroker.poa.ActivationRecord.invoke(ActivationRecord.java:186)
at
com.inprise.vbroker.poa.ServerInterceptorManager$ARWrapper.invoke(ServerInterceptorManager.java:111)
at
com.inprise.vbroker.GIOP.GiopProtocolAdapter.doRequest(GiopProtocolAdapter.java:838)
at
com.inprise.vbroker.IIOP.ServerProtocolAdapter.doRequest(ServerProtocolAdapter.java:68)
at
com.inprise.vbroker.GIOP.GiopProtocolAdapter.dispatchMessage(GiopProtocolAdapter.java:1120)
at
com.inprise.vbroker.orb.TPDispatcherImpl$TPDispatcher.run(TPDispatcherImpl.java:100)
at com.inprise.vbroker.orb.ThreadPool$PoolWorker.run(ThreadPool.java:76)
23 Mar 2007 15:13:29 - sas.slideAPI.serveur.GestionDeContenuImpl - ERROR
- org.apache.slide.common.ServiceAccessException: Service
org.apache.slide.store.impl.rdbms.JDBCStore@79b177 access error : ERROR:
update or delete on "version_history" violates foreign key constraint
"$1" on "properties"
I joined my source code and the complete stack trace
Does anyBody can help me I can't manage this problem !
Regards B DOREL
["GestionDeContenuImpl.java" (text/plain)]
/**
* GestionDeContenuImpl.java
*
* V1.0 : création
*/
package sas.slideAPI.serveur;
// service sas et log
import sas.services.*;
import sas.slideAPI.commun.corba.GestionDeContenuOperations;
import sas.slideAPI.commun.corba.GestionDeContenuPOATie;
import sas.slideAPI.commun.corba.SlideAPIException;
import java.util.Date;
import java.util.Vector;
import java.io.FileInputStream;
import java.io.File;
import java.io.IOException;
import javax.transaction.NotSupportedException;
import javax.transaction.SystemException;
import java.util.*;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.slide.authenticate.CredentialsToken;
import org.apache.slide.common.Domain;
import org.apache.slide.util.logger.*;
import org.apache.slide.webdav.util.UriHandler;
import org.apache.slide.common.NamespaceAccessTokenImpl;
import org.apache.slide.common.ServiceAccessException;
import org.apache.slide.common.SlideToken;
import org.apache.slide.common.SlideTokenImpl;
import org.apache.slide.content.Content;
import org.apache.slide.content.NodeProperty;
import org.apache.slide.content.NodeRevisionContent;
import org.apache.slide.content.NodeRevisionDescriptor;
import org.apache.slide.content.NodeRevisionDescriptors;
import org.apache.slide.content.NodeRevisionNumber;
import org.apache.slide.content.RevisionAlreadyExistException;
import org.apache.slide.content.RevisionContentNotFoundException;
import org.apache.slide.content.RevisionDescriptorNotFoundException;
import org.apache.slide.content.RevisionNotFoundException;
import org.apache.slide.event.VetoException;
import org.apache.slide.lock.ObjectLockedException;
import org.apache.slide.security.AccessDeniedException;
import org.apache.slide.security.Security;
import org.apache.slide.structure.LinkedObjectNotFoundException;
import org.apache.slide.structure.ObjectHasChildrenException;
import org.apache.slide.structure.ObjectNode;
import org.apache.slide.structure.ObjectNotFoundException;
import org.apache.slide.structure.Structure;
import org.apache.slide.structure.SubjectNode;
/**
* Implémentation du service d'accés à la gestion de contenu par l'API SLIDE
* doit être plus performant que l'utilisation d'une connexion HTTP
* <ul>
* <li> ce service réside dans la JVM "TOMCAT + SLIDE (lucene)"
* <li> ce service implémente GestionDeContenuOperations
*</ul>
* Architecture de sauvegarde
*
*
*
* @see sas.slideAPI.commun.corba.GestionDeContenuOperations
* @author bd/EADS
* @version 1.0 du 12 mars 07
* @since SASV4
*/
public class GestionDeContenuImpl extends Service
implements GestionDeContenuOperations {
// tripaille Slide
private NamespaceAccessTokenImpl namespace;
private SlideToken token;
private Structure structure;
private Content content;
private Security security;
// racine de l'index
private static final String DEFAULT_INDEX_ROOT_PATH =
"/slide/documents/index";
private String _indexRootPath = null;
private static final String DEFAULT_DOCUMENTS_PATH =
"/documents/index";
private String _documentsRootPath = null;
// Log4j
private static final String LOG_CHANNEL = GestionDeContenuImpl.class.getName();
private static final String AUTHORS_XML =
"<authors>" +
"<author>" +
"<firstname>Stefan</firstname>" +
"<lastname>Fromm</lastname>" +
"</author>" +
"</authors>";
/**
* Constructeur
*/
public GestionDeContenuImpl() {
// log.debug( "entree: constructor ListeEvenementsImpl");
_indexRootPath = DEFAULT_INDEX_ROOT_PATH;
//
_documentsRootPath = DEFAULT_DOCUMENTS_PATH;
// créer la référence CORBA du service
setRefCorba(new GestionDeContenuPOATie(this));
// log.debug( "sortie: constructor ListeEvenementsImpl");
}
/**
* SetNameSpace
* @param nameSpace
*/
public void setNamespace(NamespaceAccessTokenImpl nameSpace){
namespace = nameSpace;
token = new SlideTokenImpl(new CredentialsToken("root"));
token.setForceStoreEnlistment(true);
structure = namespace.getStructureHelper();
content = namespace.getContentHelper();
security = namespace.getSecurityHelper();
Domain.log("Non du nameSpace" + namespace.getName(),
LOG_CHANNEL,
Logger.INFO);
}
/**
* Retourne le nom CORBA de nommage du service
*
* @return nom CORBA
*/
public String getNomCorba() {
return NOM;
}
/**
* Set slide index root path directory
* @param indexRootPath
*/
public void setIndexRootPath(String indexRootPath){
_indexRootPath = indexRootPath;
}
/**
* Is ready return true test CORBA link
* @see sas.slideAPI.commun.corba.GestionDeContenuOperations#isReady()
*/
public boolean isReady(){
return true;
}
/**
*
* @throws SlideAPIException
*/
public void purgeRessourceDoc()
throws SlideAPIException {
// Validation ou rollback du nameSpace
boolean valid = false; // false c'est rollBack
try {
try {
// demarrer une transaction
namespace.begin();
// récupérer la collection racine
removeChildrenNodes(getRootCollection());
// si on arrive ici (c'est un miracle et ça marche)
valid = true;
}catch (NotSupportedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"Not supported Exception");
} catch (SystemException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"SystemException");
} catch (ObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Acces Exception");
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403," Service acces Exception");
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto exception");
} catch (RevisionDescriptorNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
}finally{
if(valid){
// si valid le finally traite le cas nominal
try{
namespace.commit();
} catch (Exception e ) {
// la transaction se termine mal
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
try{
namespace.rollback();
}catch (Exception errRollBack) {}
throw new SlideAPIException(500,e.getMessage());
}
}else{
// si pas valid le finally traite une Exception
try{
namespace.rollback();
}catch (Exception e ) {
// ne pas rajouter une Exception à une Exception
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
}
}
}
}catch(SlideAPIException ex){
throw ex;
}catch(OutOfMemoryError err){
Domain.log(err,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"OutOfMemory");
} catch(Throwable th){
Domain.log(th,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"Throwable " + th);
}
}
/**
* Supprime les noeuds fils du noueud courant
* @param parent
* @throws ObjectNotFoundException
* @throws AccessDeniedException
* @throws LinkedObjectNotFoundException
* @throws ObjectLockedException
* @throws ServiceAccessException
* @throws VetoException
* @throws RevisionDescriptorNotFoundException
* @throws ObjectHasChildrenException
*/
private void removeChildrenNodes(SubjectNode parent)
throws ObjectNotFoundException, AccessDeniedException,
LinkedObjectNotFoundException, ObjectLockedException,
ServiceAccessException, VetoException,
RevisionDescriptorNotFoundException, ObjectHasChildrenException{
// pour chaque enfant du Noueud
Enumeration lesFilsASupprimer =
structure.getChildren(token, parent);
SubjectNode leFilsCourant;
NodeRevisionDescriptors rev2;
// boucle sur les documents à supprimer
while(lesFilsASupprimer.hasMoreElements()){
leFilsCourant = (SubjectNode)lesFilsASupprimer.nextElement();
Domain.log("Piece courante " + leFilsCourant.toString(),
LOG_CHANNEL,
Logger.WARNING);
if(leFilsCourant.hasChildren()){
// supprimer les petits fils
removeChildrenNodes(leFilsCourant);
}
// pour chaque Noeud effacer le contenu et les révisions
rev2 = content.retrieve(token, leFilsCourant.getPath().toString());
NodeRevisionDescriptor lastRev = \
content.retrieve(token, rev2); \
content.remove(token,leFilsCourant.getPath().toString(),lastRev); \
content.remove(token,rev2);
// effacer le doc de la structure
structure.remove(token,leFilsCourant);
}
}
/**
* putResourceDoc Pousse le fichier désigné par "pathLocal" sous la
* collection _documentsRootPath/id si une version du
* fichier existe déjà une nouvelle version est crée
* sinon la version "initiale du fichier est crée.
* @param id int identifiant du document (au sens SAS)
* @param String pathLocal Path du fichier à importer dans la Gestion
* de contenu
* @param String auteur du document
* @see sas.slideAPI.commun.corba.GestionDeContenuOperations#
* putRessourceDoc(int, java.lang.String, java.lang.String)
*
* à Temps perdu :passer l'index du doc (Index est un objet corba) à la place
* de id cela permettra de mieux remplir l'entête.
*/
public String putRessourceDoc(int id, String pathLocal, String auteur)
throws SlideAPIException {
String path = null;
File fichierPieceJointe = new File(pathLocal);
if(!fichierPieceJointe.canRead()){
throw new SlideAPIException(400,"Can't read file " + pathLocal);
}
// les fichiers joints sont versionnés
NodeRevisionNumber lastRevision = null;
// Validation ou rollback du nameSpace
boolean valid = false; // false c'est rollBack
try {
namespace.begin();
FileInputStream fis = new FileInputStream(fichierPieceJointe);
SubjectNode laCollection = getRootCollection();
laCollection = getChildCollection(laCollection, String.valueOf(id));
try {
// ajouter les fichiers sous la collection id
path = laCollection.getUri() +"/"+fichierPieceJointe.getName();
// la pièce jointe
try {
Domain.log("Ajouter doc " +path);
structure.retrieve(token, path);
for(boolean locked = true; locked;){
try{
lastRevision = content.retrieve(token,path).getLatestRevision();
locked = false;
}catch (ObjectLockedException err) {
// ne rien faire
Domain.log("Object locked " + err , LOG_CHANNEL,
Logger.INFO);
}
}
Domain.log("Found resource with latest revision number " +
(lastRevision == null?"none":lastRevision.toString()),
LOG_CHANNEL,
Logger.INFO);
} catch (ObjectNotFoundException e) {
SubjectNode fichierJointNode = new SubjectNode();
// create object
try {
structure.create(token, fichierJointNode, path);
// le déclarer fils de la collection
laCollection.addChild(fichierJointNode);
} catch (Exception err) {
err.printStackTrace();
throw new SlideAPIException(404,err.getMessage());
}
}
// si une version de ce fichier existe déja
if(lastRevision != null ){
// créer une nouvelle révision
lastRevision = new NodeRevisionNumber(lastRevision,false);
} else {
// créer la révision 1.0
lastRevision = new NodeRevisionNumber();
content.create(token, path, false); // ICI
}
Domain.log(lastRevision.toString(),LOG_CHANNEL,Logger.INFO);
// create node revision descriptor
NodeRevisionDescriptor revisionDescriptor =
new NodeRevisionDescriptor(lastRevision,
NodeRevisionDescriptors.MAIN_BRANCH,
new Vector(),
new java.util.ArrayList());
// mettre la table d'Index et SLIDE en cohérence (au plus possible)
revisionDescriptor.setResourceType("");
revisionDescriptor.setSource("source");
revisionDescriptor.setContentLanguage("fr");
revisionDescriptor.setLastModified(new Date());
revisionDescriptor.setETag(computeEtag(path, revisionDescriptor));
revisionDescriptor.setCreationDate(new Date());
// Owner
String creator = \
((SubjectNode)security.getPrincipal(token)).getPath().lastSegment(); \
revisionDescriptor.setCreationUser(creator); revisionDescriptor.setOwner(creator);
String contentType = "text/plain";
revisionDescriptor.setContentType(contentType);
// properties
NodeProperty newProperty = new NodeProperty("authors",
AUTHORS_XML,
"index.util_derniere_modif");
revisionDescriptor.setProperty(newProperty);
// create content
NodeRevisionContent revisionContent = new NodeRevisionContent();
revisionContent.setContent(fis);
content.create(token,path, revisionDescriptor, revisionContent);
// si on arrive ici cela tient du miracle on peut valider
valid = true;
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Linked Object not found " + err);
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Access dinied " + err);
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Service access exception " + err);
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto " + err);
} catch (ObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Object not found " + err);
} catch (ObjectLockedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(300,"Locked " + err);
}catch (RevisionAlreadyExistException err) {
err.printStackTrace();
throw new SlideAPIException(400,"Revision already exist");
}finally{
if(fis != null){
try {
fis.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
if(valid){
// si valid le finally traite le cas nominal
try{
namespace.commit();
} catch (Exception e ) {
// la transaction se termine mal
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
try{
namespace.rollback();
}catch (Exception errRollBack) {}
throw new SlideAPIException(500,e.getMessage());
}
}else{
// si pas valid le finally traite une Exception
try{
namespace.rollback();
}catch (Exception e ) {
// ne pas rajouter une Exception à une Exception
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
}
}
}
}catch(SlideAPIException ex){
throw ex;
} catch(OutOfMemoryError ex){
Domain.log(ex,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"OutOfMemory");
} catch(Throwable th){
Domain.log(th,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"Throwable " + th);
}
return lastRevision.toString();
}
/**
*
* @param uri
* @param nrd
* @return
* @throws Exception
*/
private String computeEtag(String uri, NodeRevisionDescriptor nrd) {
String result =
System.currentTimeMillis()
+ "_"
+ uri.hashCode()
+ "_"
+ nrd.getLastModified()
+ "_"
+ nrd.getContentLength();
result = new String(DigestUtils.md5Hex(result));
return result;
}
/**
* Obtient une ressource (un fichier) de la gestion de contenu le fichier
* avec la version "version" . Cette ressource est copiée dans le fichier
* désigné par le "pathLocal"
*
* @param int index numéro d'index du document(id de table index)
* @param String ficSrc nom de la pièce jointe
* @param version ficVersion Version de la pièce jointe
* @param pathLocal path ou "déposer" la pièce jointe
* @see sas.slideAPI.commun.corba.GestionDeContenuOperations#
* getRessourceDoc(int,
* java.lang.String,
* java.lang.String,
* java.lang.String)
*/
public void getRessourceDoc(int index,
String ficSrc,
String ficVersion,
String pathLocal)
throws SlideAPIException {
try{
// composer le path (uri) du fichier cible)
String path = _documentsRootPath + "/"+ String.valueOf(index) + "/" + ficSrc;
try{
this.namespace.begin();
NodeRevisionContent nrc = null;
// si locked attendre !
boolean locked = true;
for(int i = 0; locked && i < 30 ; i++){
try {
// lire les révisions du fichier
NodeRevisionDescriptors revs = content.retrieve(this.token, path);
NodeRevisionDescriptor rev = content.retrieve(this.token,
revs,
new \
NodeRevisionNumber(ficVersion)); nrc = content.retrieve(this.token, path, rev);
locked = false;
} catch (ObjectLockedException err) {
Domain.log(err,LOG_CHANNEL,Logger.INFO);
}
}
// le fichier est verrouillé laisser au client le choix de la procédure
// de reprise ou abandon
if(locked){
throw new SlideAPIException(400,"Locked");
}
java.io.FileOutputStream ofs = null;
try{
java.io.InputStream is = nrc.streamContent();
byte[] buffer = new byte[1024];
File of = new File(pathLocal);
of.createNewFile(); // crée ce qui teste les droits
ofs = new java.io.FileOutputStream(of,false);
// boucle de copie
for (int lenght = is.read(buffer);
lenght > 0;
lenght = is.read(buffer)){
ofs.write(buffer,0,lenght);
}
}catch(Exception ex){
// IOException a 99% indique que la copie n'est pas possible
Domain.log(ex,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException( 403,
"Erreur lors de la copie vers le fichier local " +
pathLocal + " " + ex.toString());
} finally{
if(ofs != null){
try {
ofs.close();
}catch(Exception ex){
// erreur à la fermeture du fichier
Domain.log(ex,LOG_CHANNEL,Logger.WARNING);
}
}
}
}catch (NotSupportedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"Not supported Exception");
} catch (SystemException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"SystemException");
} catch (ObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Acces Exception");
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403," Service acces Exception");
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto exception");
} catch (RevisionDescriptorNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (RevisionNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (RevisionContentNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
}finally {
this.namespace.rollback();
}
}catch(SlideAPIException ex){
throw ex;
}catch(OutOfMemoryError err){
Domain.log(err,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"OutOfMemory");
} catch(Throwable th){
Domain.log(th,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"Throwable " + th);
}
}
/**
* Supprime les pieces jointes d'une collection
*
* @param id id du document
* @see sas.slideAPI.commun.corba.GestionDeContenuOperations
* #supprimeDocument(int)
*/
public void supprimeDocument(int id) throws SlideAPIException {
String path;
// Validation ou rollback du nameSpace
boolean valid = false; // false c'est rollBack
try {
ObjectNode laCollectionASupprimer = null;
try {
// demarrer une transaction
namespace.begin();
// vérifier l'existence dela collection correspondant à l'id
path = _documentsRootPath + "/"+id;
//
try {
laCollectionASupprimer = structure.retrieve(token, path);
for(boolean locked = true; locked;){
try{
content.retrieve(token,path).getLatestRevision();
locked = false;
}catch (ObjectLockedException err) {
// ne rien faire
Domain.log(" lock " + err ,LOG_CHANNEL,Logger.WARNING);
}
}
Domain.log("Found resource for " + path,LOG_CHANNEL,Logger.WARNING);
} catch (ObjectNotFoundException e) {
Domain.log("No resource found for " + path,LOG_CHANNEL,Logger.WARNING);
return;
}
Enumeration lesDocumentsASupprimer =
structure.getChildren(token, laCollectionASupprimer);
ObjectNode laPieceCourante;
NodeRevisionDescriptors rev2;
// boucle sur les documents à supprimer
while(lesDocumentsASupprimer.hasMoreElements()){
laPieceCourante = (ObjectNode)lesDocumentsASupprimer.nextElement();
Domain.log("Piece courante " + laPieceCourante.toString(),
LOG_CHANNEL,
Logger.WARNING);
//pour chaque piéce effacer la piéce jointe et les révisions
rev2 = content.retrieve(token, laPieceCourante.getPath().toString());
NodeRevisionDescriptor lastRev = content.retrieve(token,rev2);
content.remove(token,laPieceCourante.getPath().toString(),lastRev);
content.remove(token,rev2);
structure.remove(token,laPieceCourante);
}
Domain.log("suppression de " + laCollectionASupprimer.toString(),
LOG_CHANNEL,
Logger.WARNING);
// effacer la collection (et les revisions ??)
NodeRevisionDescriptors revs = content.retrieve(token,path);
NodeRevisionDescriptor lastRev = content.retrieve(token,revs);
content.remove(token,path,lastRev);
content.remove(token,revs);
structure.remove(token,laCollectionASupprimer);
// si on arrive ici (c'est un miracle et ça marche)
valid = true;
}catch (NotSupportedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"Not supported Exception");
} catch (SystemException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(500,"SystemException");
} catch (ObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Acces Exception");
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403," Service acces Exception");
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto exception");
} catch (RevisionDescriptorNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
}finally{
if(valid){
// si valid le finally traite le cas nominal
try{
namespace.commit();
} catch (Exception e ) {
// la transaction se termine mal
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
try{
namespace.rollback();
}catch (Exception errRollBack) {}
throw new SlideAPIException(500,e.getMessage());
}
}else{
// si pas valid le finally traite une Exception
try{
namespace.rollback();
}catch (Exception e ) {
// ne pas rajouter une Exception à une Exception
Domain.log(" Exception lors du commit " + e,
LOG_CHANNEL,
Logger.ERROR);
}
}
}
}catch(SlideAPIException ex){
throw ex;
}catch(OutOfMemoryError err){
Domain.log(err,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"OutOfMemory");
} catch(Throwable th){
Domain.log(th,LOG_CHANNEL,Logger.CRITICAL);
throw new SlideAPIException(500,"Throwable " + th);
}
}
/**
*
* @return
* @throws SlideAPIException
*/
private SubjectNode getRootCollection() throws SlideAPIException{
// vérifier et créer si nécessaire la collection racine
SubjectNode rootCollection ;
try {
rootCollection = (SubjectNode)structure.retrieve(token, _documentsRootPath);
for(boolean locked = true; locked;){
try{
content.retrieve(token,_documentsRootPath).getLatestRevision();
locked = false;
}catch (ObjectLockedException err) {
// ne rien faire
Domain.log("Root collection locked " + _documentsRootPath,
LOG_CHANNEL,
Logger.INFO);
}
}
Domain.log("Found resource for " + _documentsRootPath,LOG_CHANNEL,Logger.INFO);
} catch (ObjectNotFoundException e) {
// la collection n'existe pas on la crée
rootCollection = new SubjectNode();
// create object collection correspondant à l'id
try {
structure.create(token, rootCollection ,_documentsRootPath);
// créer un NodeRevisionContent avec le path
NodeRevisionContent dummy = new NodeRevisionContent();
dummy.setContent(String.valueOf(_documentsRootPath).getBytes()); // il faut \
un contenu !
// important to create NodeRevisionDescriptors separately to be able to tell \
it to use versioning content.create(token, _documentsRootPath,false);
content.create(token,
_documentsRootPath,
new NodeRevisionDescriptor(),
dummy);
} catch (Exception err) {
err.printStackTrace();
throw new SlideAPIException(404,err.getMessage());
}
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Acces Exception");
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403," Service acces Exception");
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto exception");
}
return rootCollection;
}
/**
* getChildCollection : retourne le noeud sous-jacent du noeud courant
* @param parent noeud père
* @param uriLastSegment dernier segment de l'uri
* @return
* @throws SlideAPIException
*/
private SubjectNode getChildCollection(SubjectNode parent,String uriLastSegment)
throws SlideAPIException{
// ajouter les fichiers sous la collection id
String path = parent.getUri() +"/"+uriLastSegment;
Domain.log(path , LOG_CHANNEL,Logger.ERROR);
SubjectNode laCollection;
// la pièce jointe
try {
NodeRevisionNumber lastRevision = null;
laCollection = (SubjectNode) structure.retrieve(token, path);
for(boolean locked = true; locked;){
try{
lastRevision = content.retrieve(token,path).getLatestRevision();
locked = false;
}catch (ObjectLockedException err) {
// ne rien faire
}
}
Domain.log("Found resource with latest revision number "
+ (lastRevision == null?"none":lastRevision.toString()),
LOG_CHANNEL,
Logger.INFO);
} catch (ObjectNotFoundException e) {
laCollection = new SubjectNode();
// create object
try {
structure.create(token, laCollection, path);
// le déclarer fils de la collection
parent.addChild(laCollection);
// créer un NodeRevisionContent avec le nom
NodeRevisionContent dummy = new NodeRevisionContent();
dummy.setContent(String.valueOf(uriLastSegment).getBytes()); // il faut un \
contenu !
// important to create NodeRevisionDescriptors separately to be able to \
tell it to use versioning content.create(token, path,false);
content.create(token,
path,
new NodeRevisionDescriptor(),
dummy);
} catch (Exception err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,err.getMessage());
}
} catch (AccessDeniedException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Acces Exception");
} catch (LinkedObjectNotFoundException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(404,"Not Found");
} catch (ServiceAccessException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403," Service acces Exception");
} catch (VetoException err) {
Domain.log(err,LOG_CHANNEL,Logger.ERROR);
throw new SlideAPIException(403,"Veto exception");
}
return laCollection;
}
}
["catalina.out" (text/plain)]
JProfiler> Protocol version 23
JProfiler> Using JVMPI
JProfiler> 32-bit library
JProfiler> Don't wait for frontend to connect.
JProfiler> Using config file /opt/jprofiler4/config/config.xml (id: 108)
JProfiler> Listening on port: 8849.
[Full GC 104K->80K(32576K), 0.0060940 secs]
JProfiler> Native library initialized
JProfiler> If output stops here, please remove -Xdebug from the command line
JProfiler> Using dynamic instrumentation
JProfiler> Time measurement: elapsed time
JProfiler> CPU profiling enabled
JProfiler> Hotspot compiler enabled
JProfiler> Starting org/apache/catalina/startup/Bootstrap ...
Created MBeanServer with ID: 6b7920:1117f904bd1:-8000:vsasdev7.dev.moss.fr:1
[Full GC 32575K->4094K(32576K), 0.1003900 secs]
[Full GC 32575K->9448K(32576K), 0.1721390 secs]
[Full GC 22077K->7009K(32576K), 0.2226920 secs]
[Full GC 32575K->10877K(32576K), 0.1430480 secs]
[Full GC 32575K->11574K(32576K), 0.1821010 secs]
23 Mar 2007 15:11:28 - org.apache.slide.common.Domain - INFO - Initializing Domain
23 Mar 2007 15:11:28 - org.apache.slide.common.Domain - INFO - Configuration found in \
classpath 23 Mar 2007 15:11:28 - org.apache.slide.webdav.event.NotificationTrigger - \
INFO - Creating notification trigger [Full GC 32575K->13105K(32576K), 0.1980320 secs]
[Full GC 15484K->11578K(32576K), 0.3381700 secs]
23 Mar 2007 15:11:29 - org.apache.slide.common.Domain - INFO - Domain configuration : \
{org.apache.slide.lock=true, org.apache.slide.versioncontrol=true, \
org.apache.slide.debug=false, org.apache.slide.binding=true, \
org.apache.slide.search=true, org.apache.slide.security=true, \
org.apache.slide.urlEncoding=UTF-8} 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Domain - INFO - Domain parameters: {logger-level=6, \
versioncontrol-exclude=, auto-version=checkout-checkin, historypath=/history, \
checkin-fork=forbidden, workingresourcepath=/workingresource, \
workspacepath=/workspace, default=slide, auto-version-control=false, \
logger=org.apache.slide.util.logger.SimpleLogger, checkout-fork=forbidden} 23 Mar \
2007 15:11:29 - org.apache.slide.common.Domain - INFO - Initializing namespace : \
slide 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - Loading \
namespace slide parameters 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - \
INFO - Loading namespace definition 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Namespace - INFO - nodestore: \
org.apache.slide.store.impl.rdbms.JDBCStore 23 Mar 2007 15:11:29 - \
org.apache.slide.store.impl.rdbms.AbstractRDBMSStore - INFO - Loading and registering \
driver 'org.postgresql.Driver' 23 Mar 2007 15:11:29 - \
org.apache.slide.store.impl.rdbms.AbstractRDBMSStore - INFO - Using DBCP pooling 23 \
Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - securitystore \
references nodestore 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO \
- lockstore references nodestore 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Namespace - INFO - revisiondescriptorsstore references \
nodestore 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - \
revisiondescriptorstore references nodestore 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Namespace - INFO - contentstore: \
org.apache.slide.store.txfile.TxFileContentStore 23 Mar 2007 15:11:29 - \
file-content-store - INFO - File Store configured to \
/home/opsnetv3/slide-store/content, working directory \
/home/opsnetv3/slide-store/work/content 23 Mar 2007 15:11:29 - file-content-store - \
INFO - Set timeout to 120 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - \
INFO - propertiesindexer: org.apache.slide.index.lucene.LucenePropertiesIndexer 23 \
Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - contentindexer: \
org.apache.slide.index.lucene.LuceneContentIndexer 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Namespace - INFO - sequencestore references nodestore 23 Mar \
2007 15:11:29 - INFO - Disabling cache timeout for store PostgresStore 23 Mar 2007 \
15:11:29 - INFO - Setting object cache size for store PostgresStore to 1000 23 Mar \
2007 15:11:29 - org.apache.slide.store.ExtendedStore - INFO - Setting permission \
cache size for store PostgresStore to 1000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Setting lock cache size for store \
PostgresStore to 1000 23 Mar 2007 15:11:29 - org.apache.slide.store.ExtendedStore - \
INFO - Setting descriptors cache size for store PostgresStore to 1000 23 Mar 2007 \
15:11:29 - org.apache.slide.store.ExtendedStore - INFO - Setting descriptor cache \
size for store PostgresStore to 1000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Setting content caching for store \
PostgresStore to false 23 Mar 2007 15:11:29 - org.apache.slide.store.ExtendedStore - \
INFO - Setting content cache size for store PostgresStore to 10000 23 Mar 2007 \
15:11:29 - org.apache.slide.store.ExtendedStore - INFO - Setting content cache byte \
size for store PostgresStore to 10000000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Setting transaction content cache size \
for store PostgresStore to 1000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Setting transaction content cache byte \
size for store PostgresStore to 1000000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Setting maximum byte size for content \
cache entry for store PostgresStore to 50000 23 Mar 2007 15:11:29 - \
org.apache.slide.store.ExtendedStore - INFO - Enabling full caching causing low \
isolation 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - \
Registering Store PostgresStore (class org.apache.slide.store.ExtendedStore) with \
parameters {descriptor-cache-size=1000, descriptors-cache-size=1000, \
object-cache-size=1000, lock-cache-size=1000, permission-cache-size=1000} on scope / \
23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - Initializing Store \
PostgresStore(org.apache.slide.store.ExtendedStore) 23 Mar 2007 15:11:29 - \
org.apache.slide.index.lucene.LuceneContentIndexer - INFO - using analyzer: \
org.apache.lucene.analysis.standard.StandardAnalyzer 23 Mar 2007 15:11:29 - \
org.apache.slide.common.Namespace - INFO - Loading namespace slide base data 23 Mar \
2007 15:11:29 - org.apache.commons.transaction.file.FileResourceManager - INFO - \
Starting RM at '/home/opsnetv3/slide-store/content' / \
'/home/opsnetv3/slide-store/work/content' 23 Mar 2007 15:11:29 - \
org.apache.commons.transaction.file.FileResourceManager - INFO - Recovering \
http-80-Processor21-1170413187306-40403 23 Mar 2007 15:11:29 - \
org.apache.commons.transaction.file.FileResourceManager - EMERGENCY - Recovering \
status information from \
'/home/opsnetv3/slide-store/work/content/http-80-Processor21-1170413187306-40403/transaction.log' \
failed 23 Mar 2007 15:11:29 - org.apache.commons.transaction.file.FileResourceManager \
- EMERGENCY - java.lang.NumberFormatException: null
java.lang.NumberFormatException: null
at java.lang.Integer.parseInt(Integer.java:436)
at java.lang.Integer.parseInt(Integer.java:518)
at org.apache.commons.transaction.file.FileResourceManager$TransactionContext.recoverState(FileResourceManager.java:1478)
at org.apache.commons.transaction.file.FileResourceManager.recoverContexts(FileResourceManager.java:1231)
at org.apache.commons.transaction.file.FileResourceManager.recover(FileResourceManager.java:475)
at org.apache.commons.transaction.file.FileResourceManager.start(FileResourceManager.java:428)
at org.apache.slide.store.txfile.AbstractTxFileStoreService.connect(AbstractTxFileStoreService.java:146)
at org.apache.slide.common.AbstractServiceBase.connect(AbstractServiceBase.java:120)
at org.apache.slide.store.AbstractStore.connect(AbstractStore.java:222)
at org.apache.slide.common.AbstractServiceBase.connectIfNeeded(AbstractServiceBase.java:192)
at org.apache.slide.common.Namespace.connectService(Namespace.java:582)
at org.apache.slide.common.Namespace.retrieveStore(Namespace.java:681)
at org.apache.slide.common.Uri.parseUri(Uri.java:384)
at org.apache.slide.common.Uri.<init>(Uri.java:98)
at org.apache.slide.common.Namespace.getUri(Namespace.java:729)
at org.apache.slide.common.Namespace.getUri(Namespace.java:710)
at org.apache.slide.common.Namespace.loadBaseData(Namespace.java:843)
at org.apache.slide.common.Domain.initNamespace(Domain.java:883)
at org.apache.slide.common.Domain.init(Domain.java:462)
at org.apache.slide.common.Domain.init(Domain.java:375)
at org.apache.slide.common.Domain.init(Domain.java:338)
at org.apache.slide.webdav.WebdavServlet.init(WebdavServlet.java:259)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.slide.webdav.WebdavServlet.init(WebdavServlet.java:198)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:925)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3857)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4118)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:589)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:536)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:471)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1102)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.jprofiler.agent.Agent$_E.run(ejt:3101)
at java.lang.Thread.run(Thread.java:534)
23 Mar 2007 15:11:29 - org.apache.commons.transaction.file.FileResourceManager - \
WARNING - Recovering of http-80-Processor21-1170413187306-40403 failed 23 Mar 2007 \
15:11:29 - org.apache.commons.transaction.file.FileResourceManager - INFO - Started \
RM 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - Init namespace \
slide configuration 23 Mar 2007 15:11:29 - org.apache.slide.common.Namespace - INFO - \
Import data into namespace slide 23 Mar 2007 15:11:29 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object / 23 Mar 2007 \
15:11:29 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/ 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading \
object /users 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - \
Object already exists at /users 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /users/root 23 Mar \
2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /users/root 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Loading object /users/administrateur 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/users/administrateur 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Loading object /users/john 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at /users/john \
23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading \
object /users/john2 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - \
INFO - Object already exists at /users/john2 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /users/guest 23 Mar \
2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /users/guest 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Loading object /users/projector 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/users/projector 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - \
INFO - Loading object /roles 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at /roles 23 \
Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading object \
/roles/root 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - \
Object already exists at /roles/root 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /roles/user 23 Mar \
2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /roles/user 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Loading object /roles/guest 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/roles/guest 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - \
Loading object /roles/projector 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/roles/projector 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - \
INFO - Loading object /actions 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at /actions 23 \
Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading object \
/actions/read 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - \
Object already exists at /actions/read 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/read-acl 23 \
Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/read-acl 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object \
/actions/read-current-user-privilege-set 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/actions/read-current-user-privilege-set 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/write 23 Mar \
2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/write 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/write-acl 23 \
Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/write-acl 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object \
/actions/write-properties 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/actions/write-properties 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object \
/actions/write-content 23 Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Object already exists at /actions/write-content 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/bind 23 Mar \
2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/bind 23 Mar 2007 15:11:30 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/unbind 23 \
Mar 2007 15:11:30 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/unbind 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /actions/unlock 23 \
Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /actions/unlock 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /documents 23 Mar \
2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already \
exists at /documents 23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - \
INFO - Loading object /documents/index 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/documents/index 23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - \
INFO - Loading object /documents/plan 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/documents/plan 23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO \
- Loading object /projector 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at /projector \
23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading \
object /projector/work 23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller \
- INFO - Object already exists at /projector/work 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Loading object /history 23 Mar 2007 \
15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/history 23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - \
Loading object /workspace 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at /workspace \
23 Mar 2007 15:11:31 - org.apache.slide.common.XMLUnmarshaller - INFO - Loading \
object /workingresource 23 Mar 2007 15:11:31 - \
org.apache.slide.common.XMLUnmarshaller - INFO - Object already exists at \
/workingresource 23 Mar 2007 15:11:31 - org.apache.slide.common.Namespace - INFO - \
Finish init namespace slide configuration [Full GC 32574K->14447K(32576K), 0.1776870 \
secs] 23 Mar 2007 15:11:31 - org.apache.slide.common.Namespace - INFO - Loading \
namespace slide configuration 23 Mar 2007 15:11:31 - org.apache.slide.common.Domain - \
INFO - Namespace configuration complete 23 Mar 2007 15:11:31 - \
sas.slideAPI.serveur.GestionDeContenuImpl - INFO - Non du nameSpaceslide [Full GC \
32575K->15921K(32576K), 0.2139800 secs] [Full GC 32576K->17222K(32576K), 0.2398740 \
secs] [Full GC[Unloading class \
sun.reflect.GeneratedSerializationConstructorAccessor2] [Unloading class \
sun.reflect.GeneratedMethodAccessor2] [Unloading class \
sun.reflect.GeneratedSerializationConstructorAccessor1] [Unloading class \
sun.reflect.GeneratedSerializationConstructorAccessor3] [Unloading class \
sun.reflect.GeneratedMethodAccessor24] [Unloading class \
sun.reflect.GeneratedConstructorAccessor14] [Unloading class \
sun.reflect.GeneratedMethodAccessor25] 32572K->14955K(32576K), 0.4364750 secs]
23 Mar 2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission [object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE] 23 Mar 2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - \
WARNING - permission=[object=/documents, subject=unauthenticated, action=all, \
->GRANT, INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - Nombre d'actions \
---------10 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - \
Adding action /actions/bind to action aggregation 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - Adding action /actions/read to \
action aggregation 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - Adding action /actions/read-acl to action aggregation 23 Mar 2007 15:13:24 \
- org.apache.slide.security.SecurityImpl - WARNING - Adding action \
/actions/read-current-user-privilege-set to action aggregation 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - Adding action /actions/unbind to \
action aggregation 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - Adding action /actions/unlock to action aggregation 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - Adding action /actions/write to \
action aggregation 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - Adding action /actions/write-acl to action aggregation 23 Mar 2007 15:13:24 \
- org.apache.slide.security.SecurityImpl - WARNING - Adding action \
/actions/write-content to action aggregation 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - Adding action \
/actions/write-properties to action aggregation 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - Action aggregations loaded \
successfully 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING \
- @@@ Actions aggregations
23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - \
/actions/read-current-user-privilege-set=[] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write=[/actions/write-properties, /actions/write-content, \
/actions/write-acl] 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - /actions/read=[/actions/read-current-user-privilege-set, \
/actions/read-acl] 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - /actions/bind=[] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - /actions/write-properties=[] 23 \
Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - \
/actions/unbind=[] 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - /actions/read-acl=[] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write-content=[/actions/bind, /actions/unbind] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - /actions/unlock=[] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - /actions/write-acl=[] \
23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - @@@ Action \
aggregations (transitive closure) 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/read-current-user-privilege-set=[/actions/read-current-user-privilege-set] \
23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write=[/actions/write, /actions/bind, /actions/write-properties, \
/actions/unbind, /actions/write-content, /actions/write-acl] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/read=[/actions/read-current-user-privilege-set, /actions/read, \
/actions/read-acl] 23 Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - \
WARNING - /actions/bind=[/actions/bind] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write-properties=[/actions/write-properties] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/unbind=[/actions/unbind] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/read-acl=[/actions/read-acl] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write-content=[/actions/bind, /actions/unbind, /actions/write-content] 23 \
Mar 2007 15:13:24 - org.apache.slide.security.SecurityImpl - WARNING - \
/actions/unlock=[/actions/unlock] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.SecurityImpl - WARNING - \
/actions/write-acl=[/actions/write-acl] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:24 - sas.slideAPI.serveur.GestionDeContenuImpl - INFO - Found resource for \
/documents/index 23 Mar 2007 15:13:24 - sas.slideAPI.serveur.GestionDeContenuImpl - \
ERROR - /documents/index/570034390 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - permission \
[object=/documents, subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar \
2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - permission \
[object=/documents, subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar \
2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - permission \
[object=/documents, subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar \
2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - permission \
[object=/documents, subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar \
2007 15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:24 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:24 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
23 Mar 2007 15:13:24 - sas.slideAPI.serveur.GestionDeContenuImpl - INFO - 1.0
23 Mar 2007 15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission [object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE] 23 Mar 2007 15:13:29 - org.apache.slide.security.ACLSecurityImpl - \
WARNING - permission=[object=/documents, subject=unauthenticated, action=all, \
->GRANT, INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:29 - sas.slideAPI.serveur.GestionDeContenuImpl - WARNING - Found resource for \
/documents/index/570034373 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - permission \
[object=/documents, subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar \
2007 15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=owner, action=/actions/read-acl, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=owner, action=/actions/read-acl, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission=[object=/, \
subject=/roles/root, action=all, ->GRANT, INHERITABLE], match=true 23 Mar 2007 \
15:13:29 - sas.slideAPI.serveur.GestionDeContenuImpl - WARNING - Piece courante \
/documents/index/570034373/license.txt 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=unauthenticated, action=all, ->GRANT, INHERITABLE] 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=unauthenticated, action=all, ->GRANT, \
INHERITABLE], match=false 23 Mar 2007 15:13:29 - \
org.apache.slide.security.ACLSecurityImpl - WARNING - permission [object=/documents, \
subject=/roles/user, action=/actions/write, ->GRANT, INHERITABLE] 23 Mar 2007 \
15:13:29 - org.apache.slide.security.ACLSecurityImpl - WARNING - \
permission=[object=/documents, subject=/roles/user, action=/actions/write, ->GRANT, \
INHERITABLE], match=true 23 Mar 2007 15:13:29 - \
org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter - ERROR - \
org.postgresql.util.PSQLException: ERROR: update or delete on "version_history" \
violates foreign key constraint "$1" on "properties"
org.postgresql.util.PSQLException: ERROR: update or delete on "version_history" \
violates foreign key constraint "$1" on "properties"
at org.postgresql.util.PSQLException.parseServerError(PSQLException.java:139)
at org.postgresql.core.QueryExecutor.executeV3(QueryExecutor.java:152)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:100)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:43)
at org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.java:517)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:50)
at org.postgresql.jdbc1.AbstractJdbc1Statement.executeUpdate(AbstractJdbc1Statement.java:273)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
at org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter.removeObject(PostgresRDBMSAdapter.java:93)
at org.apache.slide.store.impl.rdbms.AbstractRDBMSStore.removeObject(AbstractRDBMSStore.java:458)
at org.apache.slide.store.AbstractStore.removeObject(AbstractStore.java:803)
at org.apache.slide.store.ExtendedStore.removeObject(ExtendedStore.java:684)
at org.apache.slide.structure.StructureImpl.remove(StructureImpl.java:547)
at sas.slideAPI.serveur.GestionDeContenuImpl.supprimeDocument(GestionDeContenuImpl.java:653)
at sas.slideAPI.commun.corba.GestionDeContenuPOATie.supprimeDocument(GestionDeContenuPOATie.java:53)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:101)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:41)
at com.inprise.vbroker.poa.POAImpl.invoke(POAImpl.java:2822)
at com.inprise.vbroker.poa.ActivationRecord.invoke(ActivationRecord.java:186)
at com.inprise.vbroker.poa.ServerInterceptorManager$ARWrapper.invoke(ServerInterceptorManager.java:111)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.doRequest(GiopProtocolAdapter.java:838)
at com.inprise.vbroker.IIOP.ServerProtocolAdapter.doRequest(ServerProtocolAdapter.java:68)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.dispatchMessage(GiopProtocolAdapter.java:1120)
at com.inprise.vbroker.orb.TPDispatcherImpl$TPDispatcher.run(TPDispatcherImpl.java:100)
at com.inprise.vbroker.orb.ThreadPool$PoolWorker.run(ThreadPool.java:76)
23 Mar 2007 15:13:29 - sas.slideAPI.serveur.GestionDeContenuImpl - ERROR - \
org.apache.slide.common.ServiceAccessException: Service \
org.apache.slide.store.impl.rdbms.JDBCStore@79b177 access error : ERROR: update or \
delete on "version_history" violates foreign key constraint "$1" on "properties"
org.apache.slide.common.ServiceAccessException: Service \
org.apache.slide.store.impl.rdbms.JDBCStore@79b177 access error : ERROR: update or \
delete on "version_history" violates foreign key constraint "$1" on "properties"
at org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter.removeObject(PostgresRDBMSAdapter.java:129)
at org.apache.slide.store.impl.rdbms.AbstractRDBMSStore.removeObject(AbstractRDBMSStore.java:458)
at org.apache.slide.store.AbstractStore.removeObject(AbstractStore.java:803)
at org.apache.slide.store.ExtendedStore.removeObject(ExtendedStore.java:684)
at org.apache.slide.structure.StructureImpl.remove(StructureImpl.java:547)
at sas.slideAPI.serveur.GestionDeContenuImpl.supprimeDocument(GestionDeContenuImpl.java:653)
at sas.slideAPI.commun.corba.GestionDeContenuPOATie.supprimeDocument(GestionDeContenuPOATie.java:53)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:101)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:41)
at com.inprise.vbroker.poa.POAImpl.invoke(POAImpl.java:2822)
at com.inprise.vbroker.poa.ActivationRecord.invoke(ActivationRecord.java:186)
at com.inprise.vbroker.poa.ServerInterceptorManager$ARWrapper.invoke(ServerInterceptorManager.java:111)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.doRequest(GiopProtocolAdapter.java:838)
at com.inprise.vbroker.IIOP.ServerProtocolAdapter.doRequest(ServerProtocolAdapter.java:68)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.dispatchMessage(GiopProtocolAdapter.java:1120)
at com.inprise.vbroker.orb.TPDispatcherImpl$TPDispatcher.run(TPDispatcherImpl.java:100)
at com.inprise.vbroker.orb.ThreadPool$PoolWorker.run(ThreadPool.java:76)
23 Mar 2007 15:23:29 - sas.slideAPI.serveur.GestionDeContenuImpl - WARNING - Found \
resource for /documents/index/570034373 23 Mar 2007 15:23:29 - \
sas.slideAPI.serveur.GestionDeContenuImpl - WARNING - Piece courante \
/documents/index/570034373/license.txt 23 Mar 2007 15:23:29 - \
org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter - ERROR - \
org.postgresql.util.PSQLException: ERROR: update or delete on "version_history" \
violates foreign key constraint "$1" on "properties"
org.postgresql.util.PSQLException: ERROR: update or delete on "version_history" \
violates foreign key constraint "$1" on "properties"
at org.postgresql.util.PSQLException.parseServerError(PSQLException.java:139)
at org.postgresql.core.QueryExecutor.executeV3(QueryExecutor.java:152)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:100)
at org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:43)
at org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.java:517)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:50)
at org.postgresql.jdbc1.AbstractJdbc1Statement.executeUpdate(AbstractJdbc1Statement.java:273)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:101)
at org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter.removeObject(PostgresRDBMSAdapter.java:93)
at org.apache.slide.store.impl.rdbms.AbstractRDBMSStore.removeObject(AbstractRDBMSStore.java:458)
at org.apache.slide.store.AbstractStore.removeObject(AbstractStore.java:803)
at org.apache.slide.store.ExtendedStore.removeObject(ExtendedStore.java:684)
at org.apache.slide.structure.StructureImpl.remove(StructureImpl.java:547)
at sas.slideAPI.serveur.GestionDeContenuImpl.supprimeDocument(GestionDeContenuImpl.java:653)
at sas.slideAPI.commun.corba.GestionDeContenuPOATie.supprimeDocument(GestionDeContenuPOATie.java:53)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:101)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:41)
at com.inprise.vbroker.poa.POAImpl.invoke(POAImpl.java:2822)
at com.inprise.vbroker.poa.ActivationRecord.invoke(ActivationRecord.java:186)
at com.inprise.vbroker.poa.ServerInterceptorManager$ARWrapper.invoke(ServerInterceptorManager.java:111)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.doRequest(GiopProtocolAdapter.java:838)
at com.inprise.vbroker.IIOP.ServerProtocolAdapter.doRequest(ServerProtocolAdapter.java:68)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.dispatchMessage(GiopProtocolAdapter.java:1120)
at com.inprise.vbroker.orb.TPDispatcherImpl$TPDispatcher.run(TPDispatcherImpl.java:100)
at com.inprise.vbroker.orb.ThreadPool$PoolWorker.run(ThreadPool.java:76)
23 Mar 2007 15:23:29 - sas.slideAPI.serveur.GestionDeContenuImpl - ERROR - \
org.apache.slide.common.ServiceAccessException: Service \
org.apache.slide.store.impl.rdbms.JDBCStore@79b177 access error : ERROR: update or \
delete on "version_history" violates foreign key constraint "$1" on "properties"
org.apache.slide.common.ServiceAccessException: Service \
org.apache.slide.store.impl.rdbms.JDBCStore@79b177 access error : ERROR: update or \
delete on "version_history" violates foreign key constraint "$1" on "properties"
at org.apache.slide.store.impl.rdbms.PostgresRDBMSAdapter.removeObject(PostgresRDBMSAdapter.java:129)
at org.apache.slide.store.impl.rdbms.AbstractRDBMSStore.removeObject(AbstractRDBMSStore.java:458)
at org.apache.slide.store.AbstractStore.removeObject(AbstractStore.java:803)
at org.apache.slide.store.ExtendedStore.removeObject(ExtendedStore.java:684)
at org.apache.slide.structure.StructureImpl.remove(StructureImpl.java:547)
at sas.slideAPI.serveur.GestionDeContenuImpl.supprimeDocument(GestionDeContenuImpl.java:653)
at sas.slideAPI.commun.corba.GestionDeContenuPOATie.supprimeDocument(GestionDeContenuPOATie.java:53)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:101)
at sas.slideAPI.commun.corba.GestionDeContenuPOA._invoke(GestionDeContenuPOA.java:41)
at com.inprise.vbroker.poa.POAImpl.invoke(POAImpl.java:2822)
at com.inprise.vbroker.poa.ActivationRecord.invoke(ActivationRecord.java:186)
at com.inprise.vbroker.poa.ServerInterceptorManager$ARWrapper.invoke(ServerInterceptorManager.java:111)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.doRequest(GiopProtocolAdapter.java:838)
at com.inprise.vbroker.IIOP.ServerProtocolAdapter.doRequest(ServerProtocolAdapter.java:68)
at com.inprise.vbroker.GIOP.GiopProtocolAdapter.dispatchMessage(GiopProtocolAdapter.java:1120)
at com.inprise.vbroker.orb.TPDispatcherImpl$TPDispatcher.run(TPDispatcherImpl.java:100)
at com.inprise.vbroker.orb.ThreadPool$PoolWorker.run(ThreadPool.java:76)
---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic