• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
NullPointerException while using ERPersistentSessionStorage
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

NullPointerException while using ERPersistentSessionStorage


  • Subject: NullPointerException while using ERPersistentSessionStorage
  • From: Christoph Wick <email@hidden>
  • Date: Mon, 29 Jul 2013 14:57:53 +0200

Hi List,

I was trying to use ERPersistentSessionStorage (looks otherwise very promising, thx Ramsey).

I'm getting a silly NullPointerException (stacktrace below) in an application that was working perfectly before without using ERPersistantSessionStorage. I have no idea how to debug this to get more information.

The problem may come from storing an EO object called PMSUser in the session (basically a user object with name, login, passwd ... PMS=prefix for the project's classes). The code is:

public class Session extends ERXSession {

	private PMSUser currentUser = null;

	public PMSUser currentUser() {
		return currentUser;
	}

	public void setCurrentUser(PMSUser currentUser) {
		this.currentUser = currentUser;
	}
	...
}

The page where the error occurs is the one where the user can change his/her personal data using a form like

	<wo:form>
		<wo:textfield id="inputGivenName" value = "$session.currentUser.firstName" />
		...
		<wo:submitButton action="$saveAction" value="save" />
	</wo:form>

but NOT AFTER saving, but directly before rendering the page with the form.

Any ideas? Thanks in advance,
C.U.CW
--

Christoph Wick - Diplom Informatiker, Managing Director
i4innovation GmbH, Professor-Neu-Allee 39, 53225 Bonn, Germany

T +49 2 28 28 62 97 93
M +49 1 51 22 65 78 90
F +49 2 28 28 62 97 99
M email@hidden
W www.i4innovation.de

Geschäftsführer: Thomas Heep, Christoph Wick
Sitz der Gesellschaft: Bonn | Amtsgericht Bonn HRB 18548 | USt-IdNr.: DE276502600


Jul 29 14:41:01 PMS[65432] WARN  NSLog  - <er.extensions.appserver.ERXComponentRequestHandler>: Exception occurred while handling request:
java.lang.NullPointerException
[2013-7-29 14:41:1 MESZ] <WorkerThread0> java.lang.NullPointerException
	at com.webobjects.eocontrol.EOCustomObject.willReadRelationship(EOCustomObject.java:834)
	at er.extensions.eof.ERXGenericRecord.willReadRelationship(ERXGenericRecord.java:380)
	at com.webobjects.eocontrol._EOMutableKnownKeyDictionary$Initializer$_LazyGenericRecordBinding.valueInObject(_EOMutableKnownKeyDictionary.java:614)
	at er.extensions.eof.ERXGenericRecord$TouchingBinding.valueInObject(ERXGenericRecord.java:209)
	at com.webobjects.eocontrol.EOCustomObject.storedValueForKey(EOCustomObject.java:990)
	at com.webobjects.eocontrol.EOEditingContext._valuesForObject(EOEditingContext.java:790)
	at com.webobjects.eocontrol.EOCustomObject.writeObject(EOCustomObject.java:1125)
	at sun.reflect.GeneratedMethodAccessor42.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
	at java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:161)
	at java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1687)
	at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:478)
	at com.webobjects.foundation.NSDictionary.writeObject(NSDictionary.java:594)
	at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
	at com.webobjects.appserver.WOComponent.writeObject(WOComponent.java:314)
	at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
	at java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:161)
	at java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1687)
	at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:478)
	at com.webobjects.foundation.NSDictionary.writeObject(NSDictionary.java:594)
	at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
	at com.webobjects.appserver.WOComponent.writeObject(WOComponent.java:314)
	at sun.reflect.GeneratedMethodAccessor35.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
	at java.io.ObjectOutputStream.access$300(ObjectOutputStream.java:161)
	at java.io.ObjectOutputStream$PutFieldImpl.writeFields(ObjectOutputStream.java:1687)
	at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:478)
	at com.webobjects.foundation.NSDictionary.writeObject(NSDictionary.java:594)
	at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:975)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1480)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
	at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
	at er.persistentsessionstorage.model.ERSessionInfo.archiveDataFromSession(ERSessionInfo.java:61)
	at er.persistentsessionstorage.ERPersistentSessionStore.saveSessionForContext(ERPersistentSessionStore.java:46)
	at com.webobjects.appserver.WOSessionStore.checkInSessionForContext(WOSessionStore.java:234)
	at com.webobjects.appserver.WOApplication.saveSessionForContext(WOApplication.java:1892)
	at er.extensions.appserver.ERXApplication.saveSessionForContext(ERXApplication.java:2381)
	at er.extensions.appserver.ERXComponentRequestHandler._dispatchWithPreparedApplication(ERXComponentRequestHandler.java:273)
	at er.extensions.appserver.ERXComponentRequestHandler._handleRequest(ERXComponentRequestHandler.java:302)
	at er.extensions.appserver.ERXComponentRequestHandler.handleRequest(ERXComponentRequestHandler.java:378)
	at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1687)
	at er.extensions.appserver.ERXApplication.dispatchRequestImmediately(ERXApplication.java:2109)
	at er.extensions.appserver.ERXApplication.dispatchRequest(ERXApplication.java:2074)
	at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:144)
	at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:226)
	at java.lang.Thread.run(Thread.java:722)



 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: NullPointerException while using ERPersistentSessionStorage
      • From: Ramsey Gurley <email@hidden>
  • Prev by Date: Re: Create dynamic AjaxTabbedPanelTab in AjaxTabbedPanel with WORepetion
  • Next by Date: Re: NullPointerException while using ERPersistentSessionStorage
  • Previous by thread: Re: ERDListPageRepetition Question
  • Next by thread: Re: NullPointerException while using ERPersistentSessionStorage
  • Index(es):
    • Date
    • Thread