Hey Folks,
me again and already 2 things I have to clear up:
(1)
We're savin some kind of notes in our system which can be assigned only to
one person or to a list of persons.
Herefore we've got one table for the notes and a mapping table which saves
the noteid and the id of the person.
Alright, so I creata note and add a person as a recipient. Now I re-open the
window, remove the person i originally added to the note and add a new
person to the note. I hit the save button and everything works fine.
When I try to re-open the note cayenne gives me a nice exception:
19:19:52.204 WARN!! Exception for /ams?serviceId=Echo.Synchronize
java.lang.NullPointerException
at
org.apache.cayenne.access.DataContextFaults$ToOneFault.doResolveFault(DataContextFaults.java:108)
at
org.apache.cayenne.access.DataContextFaults$ToOneFault.resolveFault(DataContextFaults.java:81)
at
org.apache.cayenne.CayenneDataObject.readProperty(CayenneDataObject.java:209)
at
ams.entities.auto._Mappingnotizperson.getToPersonen(_Mappingnotizperson.java:30)
at
ams.kalender.NotizCreateWindowPane.<init>(NotizCreateWindowPane.java:115)
at ams.kalender.Kalender$4.actionPerformed(Kalender.java:315)
at
nextapp.echo2.app.button.AbstractButton.fireActionPerformed(AbstractButton.java:135)
at
nextapp.echo2.app.button.AbstractButton$1.actionPerformed(AbstractButton.java:100)
at
nextapp.echo2.app.button.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:70)
at
nextapp.echo2.app.button.DefaultButtonModel.doAction(DefaultButtonModel.java:58)
at
nextapp.echo2.app.button.AbstractButton.doAction(AbstractButton.java:121)
at
nextapp.echo2.app.button.AbstractButton.processInput(AbstractButton.java:506)
at
nextapp.echo2.app.update.ClientUpdateManager.process(ClientUpdateManager.java:116)
at
nextapp.echo2.app.update.UpdateManager.processClientUpdates(UpdateManager.java:89)
at
nextapp.echo2.webcontainer.ContainerSynchronizeService.renderUpdate(ContainerSynchronizeService.java:472)
at
nextapp.echo2.webrender.service.SynchronizeService.service(SynchronizeService.java:279)
at
nextapp.echo2.webrender.WebRenderServlet.process(WebRenderServlet.java:273)
at
nextapp.echo2.webrender.WebRenderServlet.doPost(WebRenderServlet.java:189)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:356)
at
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:342)
at
org.apache.cayenne.conf.WebApplicationContextFilter.doFilter(WebApplicationContextFilter.java:91)
at
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334)
at
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1776)
at
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:514)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1726)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
at
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:196)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:487)
Well, this exception comes on an object with the PersistenceState =
Transient. The exception is thrown when in doResolveFault cayenne tries to
access the object's context.
But why? This object shouldn't even be there! In my opinion this is a bug.
It doesn't matter, if we delete the object with deletObject or with a delet
query. How can it be? It's pretty severe though.
(2)
I try to access a mapping table again, this time we manage resources like
rooms, beamers etc.
I get all mappings and try to access via mapping.getToResource().getname()
the resource's name.
We get:
19:22:49.168 WARN!! Exception for /ams?serviceId=Echo.Synchronize
org.apache.cayenne.FaultFailureException: [v..AYENNE_VERSION@
@CAYENNE_BUILD_DAT.. Error resolving fault for ObjectId:
<ObjectId:Resource, IDRESOURCE=1> and state (hollow). Possible cause -
matching row is missing from the database.
at
org.apache.cayenne.access.DataContext.prepareForAccess(DataContext.java:1816)
at
org.apache.cayenne.CayenneDataObject.readProperty(CayenneDataObject.java:202)
at ams.entities.auto._Resource.getCapacity(_Resource.java:26)
at
ams.services.CayenneEventService.isResourceReserveable(CayenneEventService.java:373)
at
ams.resource.mgmt.ResourceReservationWindowPane.actionSave(ResourceReservationWindowPane.java:224)
at
ams.resource.mgmt.ResourceReservationWindowPane.access$6(ResourceReservationWindowPane.java:144)
at
ams.resource.mgmt.ResourceReservationWindowPane$4.actionPerformed(ResourceReservationWindowPane.java:467)
at
nextapp.echo2.app.button.AbstractButton.fireActionPerformed(AbstractButton.java:135)
at echopointng.ButtonEx$1.actionPerformed(ButtonEx.java:120)
at
nextapp.echo2.app.button.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:70)
at
echopointng.model.DefaultButtonModelEx.doAction(DefaultButtonModelEx.java:51)
at echopointng.ButtonEx.processInput(ButtonEx.java:203)
at
nextapp.echo2.app.update.ClientUpdateManager.process(ClientUpdateManager.java:116)
at
nextapp.echo2.app.update.UpdateManager.processClientUpdates(UpdateManager.java:89)
at
nextapp.echo2.webcontainer.ContainerSynchronizeService.renderUpdate(ContainerSynchronizeService.java:472)
at
nextapp.echo2.webrender.service.SynchronizeService.service(SynchronizeService.java:279)
at
nextapp.echo2.webrender.WebRenderServlet.process(WebRenderServlet.java:273)
at
nextapp.echo2.webrender.WebRenderServlet.doPost(WebRenderServlet.java:189)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:356)
at
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:342)
at
org.apache.cayenne.conf.WebApplicationContextFilter.doFilter(WebApplicationContextFilter.java:91)
at
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHandler.java:334)
at
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:286)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1776)
at
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:514)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1726)
at org.mortbay.http.HttpServer.service(HttpServer.java:879)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:790)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:952)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:807)
at
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:196)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:487)
i already checked all references again and again I always get this annoying
message.
the data are there, at 100% all data and all constraints in the database are
there. I double-checked everything.
Please, could someone help me?
thanks in advance!
Jan
_________________________________________________________________
Die neue MSN Suche Toolbar mit Windows-Desktopsuche. Suchen Sie gleichzeitig
im Web, Ihren E-Mails und auf Ihrem PC! Jetzt neu! http://desktop.msn.de/
Jetzt gratis downloaden!
This archive was generated by hypermail 2.0.0 : Thu Sep 13 2007 - 13:25:47 EDT