You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Dumitru CIUBENCO <dc...@ascenta.ro> on 2007/09/04 00:17:12 UTC
jackrabbit first steps problem
Hi
I'm newbie here, and I'm trying to build a sample application using jackrabbit(1.3x)+tomcat(5x,6x), I tried many configurations and different approach including jcr spring modules, and I have the same Exception every time usually on "session.save();" statement after adding a child to root node:
[code]
javax.servlet.ServletException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
com.onjava.blog.util.BlogApplicationException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
com.onjava.blog.data.dao.impl.JackrabbitBlogEntryDAO.insertBlogEntry(JackrabbitBlogEntryDAO.java:81)
com.onjava.blog.ui.action.AddBlogEntryAction.execute(AddBlogEntryAction.java:35)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
[/code]
I'm definitely doing something wrong because it is simple application which adds some simple node to repository. Maybe somebody have idea about this? It would be very helpful
Thanks, Dumitru
Re: jackrabbit first steps problem
Posted by Thomas Mueller <th...@gmail.com>.
Hi,
> I think this is more about some configurations
A lot of people use Jackrabbit with Tomcat. The exception message
doesn't look like a wrong configuration. In the stack trace you send I
don't see any Jackrabbit classes.
Can you try with a fresh repository? If you can reproduce the problem
with a fresh repository, could you try to find the root cause of the
problem in the log files (the Jackrabbit stack trace), and post it as
well?
Thanks,
Thomas
RE: jackrabbit first steps problem
Posted by Dumitru CIUBENCO <dc...@ascenta.ro>.
Well, I don't think that the problem is in this part of code, I think this is more about some configurations, maybe somebody already had this error.
I should mention that I didn’t no changes in tomcat configuration files(tomcat 5.X)
-----Original Message-----
From: Thomas Mueller [mailto:thomas.tom.mueller@gmail.com]
Sent: Tuesday, September 04, 2007 12:30 PM
To: users@jackrabbit.apache.org
Subject: Re: jackrabbit first steps problem
Hi,
Could you test the following code? It works for me, and is very
similar to the code where you get the problem. If it works for you as
well, we would need to find out what is the difference between your
and this code.
import org.apache.jackrabbit.core.TransientRepository;
import javax.jcr.Node;
import javax.jcr.Session;
import javax.jcr.SimpleCredentials;
public class TestSimple {
public static void main(String[] args) throws Exception {
Session session = new TransientRepository()
.login(new SimpleCredentials("", new char[0]));
Node root = session.getRootNode();
Node hello = root.addNode("hello");
Node world = hello.addNode("world");
world.setProperty("message", session.getValueFactory().createValue(
"Hello, World!"));
session.save();
String msg = root.getNode("hello").getNode("world").getProperty(
"message").getString();
System.out.println("message: " + msg);
}
}
Thomas
On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
>
>
>
>
> Thanks Alex. My code in order to access session is simple, something like:
>
>
>
> [code]
>
> Session session =rp.getRepository().login(new
> SimpleCredentials("kirpi4ik", "password".toCharArray()));
>
> {
>
> Node root =session.getRootNode();
>
> Node hello = root.addNode("hello");
>
> Node world = hello.addNode("world");
>
> world.setProperty("message",new StringValue("Hello, World!"));
>
> session.save();
>
>
>
> } catch (Exception ex) {
>
> ex.printStackTrace();
>
> } finally {
>
> session.logout();
>
> }
>
>
>
> [/code]
>
>
>
> Attached is exception stack trace for another sample application which
> throws the same exception
>
>
>
>
>
>
> -----Original Message-----
> From: Alexandru Popescu ☀
> [mailto:the.mindstorm.mailinglist@gmail.com]
> Sent: Tuesday, September 04, 2007 2:05 AM
> To: users@jackrabbit.apache.org
> Subject: Re: jackrabbit first steps problem
>
>
>
> On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
>
> > Hi
>
> > I'm newbie here, and I'm trying to build a sample application using
> jackrabbit(1.3x)+tomcat(5x,6x), I tried many configurations and different
> approach including jcr spring modules, and I have the same Exception every
> time usually on "session.save();" statement after adding a child to root
> node:
>
> >
>
> > [code]
>
> > javax.servlet.ServletException: javax.jcr.RepositoryException: /: unable
> to update item.: Unable to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable
> to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
>
> >
> org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520)
>
> >
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427)
>
> >
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
>
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
>
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> >
>
> > root cause
>
> >
>
> > com.onjava.blog.util.BlogApplicationException:
> javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve
> path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable
> to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
>
> >
> com.onjava.blog.data.dao.impl.JackrabbitBlogEntryDAO.insertBlogEntry(JackrabbitBlogEntryDAO.java:81)
>
> >
> com.onjava.blog.ui.action.AddBlogEntryAction.execute(AddBlogEntryAction.java:35)
>
> >
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
>
> >
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
>
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
>
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> >
>
> > [/code]
>
> >
>
> > I'm definitely doing something wrong because it is simple application
> which adds some simple node to repository. Maybe somebody have idea about
> this? It would be very helpful
>
> >
>
> >
>
> >
>
> > Thanks, Dumitru
>
> >
>
>
>
> Is your Session accessed in write mode from multiple threads?
>
>
>
> ./alex
>
> --
>
> .w( the_mindstorm )p.
>
Re: jackrabbit first steps problem
Posted by Thomas Mueller <th...@gmail.com>.
Hi,
Could you test the following code? It works for me, and is very
similar to the code where you get the problem. If it works for you as
well, we would need to find out what is the difference between your
and this code.
import org.apache.jackrabbit.core.TransientRepository;
import javax.jcr.Node;
import javax.jcr.Session;
import javax.jcr.SimpleCredentials;
public class TestSimple {
public static void main(String[] args) throws Exception {
Session session = new TransientRepository()
.login(new SimpleCredentials("", new char[0]));
Node root = session.getRootNode();
Node hello = root.addNode("hello");
Node world = hello.addNode("world");
world.setProperty("message", session.getValueFactory().createValue(
"Hello, World!"));
session.save();
String msg = root.getNode("hello").getNode("world").getProperty(
"message").getString();
System.out.println("message: " + msg);
}
}
Thomas
On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
>
>
>
>
> Thanks Alex. My code in order to access session is simple, something like:
>
>
>
> [code]
>
> Session session =rp.getRepository().login(new
> SimpleCredentials("kirpi4ik", "password".toCharArray()));
>
> {
>
> Node root =session.getRootNode();
>
> Node hello = root.addNode("hello");
>
> Node world = hello.addNode("world");
>
> world.setProperty("message",new StringValue("Hello, World!"));
>
> session.save();
>
>
>
> } catch (Exception ex) {
>
> ex.printStackTrace();
>
> } finally {
>
> session.logout();
>
> }
>
>
>
> [/code]
>
>
>
> Attached is exception stack trace for another sample application which
> throws the same exception
>
>
>
>
>
>
> -----Original Message-----
> From: Alexandru Popescu ☀
> [mailto:the.mindstorm.mailinglist@gmail.com]
> Sent: Tuesday, September 04, 2007 2:05 AM
> To: users@jackrabbit.apache.org
> Subject: Re: jackrabbit first steps problem
>
>
>
> On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
>
> > Hi
>
> > I'm newbie here, and I'm trying to build a sample application using
> jackrabbit(1.3x)+tomcat(5x,6x), I tried many configurations and different
> approach including jcr spring modules, and I have the same Exception every
> time usually on "session.save();" statement after adding a child to root
> node:
>
> >
>
> > [code]
>
> > javax.servlet.ServletException: javax.jcr.RepositoryException: /: unable
> to update item.: Unable to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable
> to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
>
> >
> org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520)
>
> >
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427)
>
> >
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
>
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
>
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> >
>
> > root cause
>
> >
>
> > com.onjava.blog.util.BlogApplicationException:
> javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve
> path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable
> to resolve path for item:
> 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
>
> >
> com.onjava.blog.data.dao.impl.JackrabbitBlogEntryDAO.insertBlogEntry(JackrabbitBlogEntryDAO.java:81)
>
> >
> com.onjava.blog.ui.action.AddBlogEntryAction.execute(AddBlogEntryAction.java:35)
>
> >
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
>
> >
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
>
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
>
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
>
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> >
>
> > [/code]
>
> >
>
> > I'm definitely doing something wrong because it is simple application
> which adds some simple node to repository. Maybe somebody have idea about
> this? It would be very helpful
>
> >
>
> >
>
> >
>
> > Thanks, Dumitru
>
> >
>
>
>
> Is your Session accessed in write mode from multiple threads?
>
>
>
> ./alex
>
> --
>
> .w( the_mindstorm )p.
>
RE: jackrabbit first steps problem
Posted by Dumitru CIUBENCO <dc...@ascenta.ro>.
Thanks Alex. My code in order to access session is simple, something like:
[code]
Session session =rp.getRepository().login(new SimpleCredentials("kirpi4ik", "password".toCharArray()));
{
Node root =session.getRootNode();
Node hello = root.addNode("hello");
Node world = hello.addNode("world");
world.setProperty("message",new StringValue("Hello, World!"));
session.save();
} catch (Exception ex) {
ex.printStackTrace();
} finally {
session.logout();
}
[/code]
Attached is exception stack trace for another sample application which throws the same exception
-----Original Message-----
From: Alexandru Popescu ☀ [mailto:the.mindstorm.mailinglist@gmail.com]
Sent: Tuesday, September 04, 2007 2:05 AM
To: users@jackrabbit.apache.org
Subject: Re: jackrabbit first steps problem
On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
> Hi
> I'm newbie here, and I'm trying to build a sample application using jackrabbit(1.3x)+tomcat(5x,6x), I tried many configurations and different approach including jcr spring modules, and I have the same Exception every time usually on "session.save();" statement after adding a child to root node:
>
> [code]
> javax.servlet.ServletException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
> org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520)
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427)
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> root cause
>
> com.onjava.blog.util.BlogApplicationException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
> com.onjava.blog.data.dao.impl.JackrabbitBlogEntryDAO.insertBlogEntry(JackrabbitBlogEntryDAO.java:81)
> com.onjava.blog.ui.action.AddBlogEntryAction.execute(AddBlogEntryAction.java:35)
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> [/code]
>
> I'm definitely doing something wrong because it is simple application which adds some simple node to repository. Maybe somebody have idea about this? It would be very helpful
>
>
>
> Thanks, Dumitru
>
Is your Session accessed in write mode from multiple threads?
./alex
--
.w( the_mindstorm )p.
Re: jackrabbit first steps problem
Posted by Alexandru Popescu ☀ <th...@gmail.com>.
On 9/4/07, Dumitru CIUBENCO <dc...@ascenta.ro> wrote:
> Hi
> I'm newbie here, and I'm trying to build a sample application using jackrabbit(1.3x)+tomcat(5x,6x), I tried many configurations and different approach including jcr spring modules, and I have the same Exception every time usually on "session.save();" statement after adding a child to root node:
>
> [code]
> javax.servlet.ServletException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
> org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:520)
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:427)
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> root cause
>
> com.onjava.blog.util.BlogApplicationException: javax.jcr.RepositoryException: /: unable to update item.: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor: Unable to resolve path for item: 0eb66ffa-5d88-4095-a012-6a7c45ac7713/{}blogAuthor
> com.onjava.blog.data.dao.impl.JackrabbitBlogEntryDAO.insertBlogEntry(JackrabbitBlogEntryDAO.java:81)
> com.onjava.blog.ui.action.AddBlogEntryAction.execute(AddBlogEntryAction.java:35)
> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
> [/code]
>
> I'm definitely doing something wrong because it is simple application which adds some simple node to repository. Maybe somebody have idea about this? It would be very helpful
>
>
>
> Thanks, Dumitru
>
Is your Session accessed in write mode from multiple threads?
./alex
--
.w( the_mindstorm )p.