Hello,

 

To explain what I did, I just called one method below and the 2nd
"save()" gives the exception I pasted beneath:

 

      public static synchronized void createRepositoryStructure(Session
s, boolean removeExisting) {

 

            try {

                  getRootNode(s).addMixin(MIXIN_LOCKABLE);

                  s.save();

            } catch (RepositoryException e) {

                  throw e;

            }

 

            try {

                  Node node = getRtdeRootNode(s);

                  if (node != null) {

                        if (removeExisting) {

                              node.remove();

                              s.save();

                        } else {

                              return;

                        }

                  }

                  Node root = getRootNode(s);

                  Node rtdeRoot = addNode(root, RTDE_ROOT_NAME);

                  addNode(rtdeRoot, TENANTS_ROOT_NAME);

 

                  // the following save action produced the exception

 

                  s.save();

 

            } catch (RepositoryException e) {

                  throw new e;

            }

 

      }

 

 

I am using DavEx to remotely connecting to a repository at
http://localhost:8080/jackrabbit-webapp-2.0.0/server which works in web
browser but not with JCR API

 

When I call Session.save(), I got the "Bad Request" exception, but if I
use a local repository impl, like TransientRepository, everything works
fine. Could you guys help me out?

 

Caused by: javax.jcr.RepositoryException: Bad Request

                at
org.apache.jackrabbit.spi2dav.ExceptionConverter.generate(ExceptionConve
rter.java:113)

                at
org.apache.jackrabbit.spi2dav.ExceptionConverter.generate(ExceptionConve
rter.java:49)

                at
org.apache.jackrabbit.spi2davex.RepositoryServiceImpl$BatchImpl.start(Re
positoryServiceImpl.java:457)

                at
org.apache.jackrabbit.spi2davex.RepositoryServiceImpl$BatchImpl.access$2
00(RepositoryServiceImpl.java:399)

                at
org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.submit(RepositoryS
erviceImpl.java:304)

                at
org.apache.jackrabbit.jcr2spi.WorkspaceManager$OperationVisitorImpl.exec
ute(WorkspaceManager.java:830)

                at
org.apache.jackrabbit.jcr2spi.WorkspaceManager$OperationVisitorImpl.acce
ss$500(WorkspaceManager.java:797)

                at
org.apache.jackrabbit.jcr2spi.WorkspaceManager.execute(WorkspaceManager.
java:594)

                at
org.apache.jackrabbit.jcr2spi.state.SessionItemStateManager.save(Session
ItemStateManager.java:139)

                at
org.apache.jackrabbit.jcr2spi.ItemImpl.save(ItemImpl.java:246)

                at
org.apache.jackrabbit.jcr2spi.SessionImpl.save(SessionImpl.java:328)

                at
com.fiserv.repository.jcr.JCRUtils.createRepositoryStructure(JCRUtils.ja
va:196)

                ... 51 more

Caused by: org.apache.jackrabbit.webdav.DavException: Bad Request

                at
org.apache.jackrabbit.webdav.client.methods.DavMethodBase.getResponseExc
eption(DavMethodBase.java:172)

                at
org.apache.jackrabbit.webdav.client.methods.DavMethodBase.checkSuccess(D
avMethodBase.java:181)

                at
org.apache.jackrabbit.spi2davex.RepositoryServiceImpl$BatchImpl.start(Re
positoryServiceImpl.java:453)

                ... 60 more

 

Thanks in advance!

Xuetao

 

Reply via email to