Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-10 Thread Samuel Pelletier
I second Chuck.

You are trying to hide or run around another problem. The session() method 
should succeed, if it raise, fix the real problem instead of trying to hide it.

Samuel


Le 2013-12-09 à 10:29, Chuck Hill ch...@global-village.net a écrit :

 
 On 2013-12-09 1:20 AM, Raymond NANEON wrote:
 
 Hi Samuel,
 
 I surrounded the mySession() by try - catch because the Exception appear 
 when sess = (Session) session(), so I catch the Exception and create a new 
 session.
 The problem is not in creating new session but in checking old session.
 
 I initialized mySession with session which come from my DirectAction but I 
 get the same Exception : Trying to check out a session twice in one RR loop.
 
 I go to override restoreSessionWithID method and not throwing an Exception, 
 to see what will happens.
 
 That is a very bad idea.  You are doing something very wrong somewhere in 
 your app that is causing this error.
 
 
 Chuck
 
 
 Envoyé depuis iCloud
 
 Le 6 déc. 2013 à 19:21, Samuel Pelletier sam...@samkar.com a écrit :
 
 Hi Raymond,
 
 I think the problem come from the mySession() method. You are not supposed 
 to create session with new Session(). Why not use the session() method in 
 the DirecAction base class?
 
 If the regular session() method throw, there is a problem somewhere else.
 
 Samuel
 
 Le 2013-12-06 à 03:30, Raymond NANEON rnan...@me.com a écrit :
 
 Hi Samuel and Chuck,
 
 Here is how the exception is occured.
 When I use the directAction link generated by my apps to access to a 
 specific page all is fine. 
 
 Example of my DA :
 
 public WOActionResults visaProjectAction() {
 directVisa = true;
 WOActionResults nextPage = null;
 String login = ;
 String password = ;
 NSDictionary actionParams = getParamsFromRequest(request(), null);
 String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);
 String directVisa = (String) actionParams.valueForKey(DIRECTVISA);
 NSMutableDictionary params = new NSMutableDictionary();
 if (!MyStringCtrl.isEmpty(projetId)) {
 params.put(PROJET_ID_KEY, new Integer(projetId));
 }
 if (!MyStringCtrl.isEmpty(directVisa)) {
 if (directVisa.equals(O) || directVisa.equals(OUI)) {
 params.put(DIRECTVISA, new Boolean(true));
 params.put(DIRECTVALIDATE, new Boolean(false));
 }
 }
 laSession().setActionParams(params.immutableClone());
 if (useCasService()) {
 return loginCASPage();
 } else {
 nextPage = pageWithName(DAVisaMain.class.getName());
 return nextPage;
 }
 }
 
 And then When I go to my apps Home, I get the Exception :
 
 Example myHome method : 
 
 public WOActionResults myHome() {
 mySession().resetAll();
 ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class
 .getName());
 //mySession().reset();
 redirect.setComponent(mySession().myHome());
 return redirect;
 }
 
 public Session mySession() {
 if (sess == null) {
 try {
 sess = (Session) session();
 } catch (Exception e) {
 sess = new Session();
 e.printStackTrace();
 }
 }
 return sess;
 }
 The Exception occur when to go my apps Home, my apps re-call the session 
 before display homePage.
 Important : My app use Wrapper.
 Before using DirectAction to access to my app I never had this kind of 
 exception.
 
 Exception : 
 java.lang.IllegalStateException: Trying to check out a session twice in one 
 RR loop: tjRpYltVknbeqG0Eimzt1M
 at 
 er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389)
 at com.webobjects.appserver.WOContext.session(WOContext.java:364)
 at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324)
 at 
 utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117)
 at 
 utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52)
 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at 
 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
 at 
 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
 at 
 com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640)
 at 
 com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544)
 at 
 com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642)
 at 
 com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332)
 at 
 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-09 Thread Raymond NANEON
Hi Samuel,I surrounded the mySession() by "try - catch" because the Exception appear when sess = (Session) session(), so I catch the Exception and create a new session.The problem is not in creating new session but in checking old session.I initialized mySession with session which come from my DirectAction but I get the same Exception : Trying to check out a session twice in one RR loop.I go to override restoreSessionWithID method and not throwing an Exception, to see what will happens.ThanksEnvoyé depuis iCloudLe 6 déc. 2013 à 19:21, Samuel Pelletier sam...@samkar.com a écrit :Hi Raymond,I think the problem come from the "mySession()" method. You are not supposed to create session with new Session(). Why not use the session() method in the DirecAction base class?If the regular session() method throw, there is a problem somewhere else.SamuelLe 2013-12-06 à 03:30, Raymond NANEON rnan...@me.com a écrit :Hi Samuel and Chuck,Here is how the exception is occured.When I use the directAction link generated by my apps to access to a specific page all is fine. Example of my DA :public WOActionResults visaProjectAction() {  directVisa = true;  WOActionResults nextPage = null;  String login = "";  String password = "";  NSDictionary actionParams = getParamsFromRequest(request(), null);  String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);  String directVisa = (String) actionParams.valueForKey(DIRECTVISA);  NSMutableDictionary params = new NSMutableDictionary();  if (!MyStringCtrl.isEmpty(projetId)) {   params.put(PROJET_ID_KEY, new Integer(projetId));  }  if (!MyStringCtrl.isEmpty(directVisa)) {   if (directVisa.equals("O") || directVisa.equals("OUI")) {params.put(DIRECTVISA, new Boolean(true));params.put(DIRECTVALIDATE, new Boolean(false));   }  }  laSession().setActionParams(params.immutableClone());  if (useCasService()) {   return loginCASPage();  } else {   nextPage = pageWithName(DAVisaMain.class.getName());   return nextPage;  } }And then When I go to my apps Home, I get the Exception :Example myHome method :   public WOActionResults myHome() {  mySession().resetAll();  ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class.getName()); //mySession().reset();  redirect.setComponent(mySession().myHome());  return redirect; }public Session mySession() {  if (sess == null) {   try {sess = (Session) session();   } catch (Exception e) {sess = new Session();e.printStackTrace();   }  }  return sess; }The Exception occur when to go my apps Home, my apps re-call the session before display homePage.Important : My app use Wrapper.Before using DirectAction to access to my app I never had this kind of exception.Exception : java.lang.IllegalStateException: Trying to check out a session twice in one RR loop: tjRpYltVknbeqG0Eimzt1M at er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389) at com.webobjects.appserver.WOContext.session(WOContext.java:364) at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324) at utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117) at utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640) at com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544) at com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642) at com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332) at com.webobjects.appserver.WOComponent.pageWithName(WOComponent.java:1346) at utt.rec.projet.server.Session.myHome(Session.java:4265) at utt.rec.projet.server.components.EditNextProject.annuler(EditNextProject.java:82) 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:597) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636) at com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134) at com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1324) at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1736) at com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447) at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-09 Thread Raymond NANEON
Hi,I always have the Exception, so I rewrote mySession() method. After catching Exception, I don't create a new session but use the same like this : public Session mySession() { if (sess == null) { try { sess = (Session) session(); } catch (Exception e) { sess = (Session) Session.anySession(); sess.awake(); e.printStackTrace(); } } return sess; }If I comment the argument "e.printStackTrace()", the Exception is transparent. Time to resolved the issueWhat do you think?ThanksEnvoyé depuis iCloudLe 9 déc. 2013 à 10:20, Raymond NANEON rnan...@me.com a écrit :Hi Samuel,I surrounded the mySession() by "try - catch" because the Exception appear when sess = (Session) session(), so I catch the Exception and create a new session.The problem is not in creating new session but in checking old session.I initialized mySession with session which come from my DirectAction but I get the same Exception : Trying to check out a session twice in one RR loop.I go to override restoreSessionWithID method and not throwing an Exception, to see what will happens.ThanksEnvoyé depuis iCloudLe 6 déc. 2013 à 19:21, Samuel Pelletier sam...@samkar.com a écrit :Hi Raymond,I think the problem come from the "mySession()" method. You are not supposed to create session with new Session(). Why not use the session() method in the DirecAction base class?If the regular session() method throw, there is a problem somewhere else.SamuelLe 2013-12-06 à 03:30, Raymond NANEON rnan...@me.com a écrit :Hi Samuel and Chuck,Here is how the exception is occured.When I use the directAction link generated by my apps to access to a specific page all is fine. Example of my DA :public WOActionResults visaProjectAction() {  directVisa = true;  WOActionResults nextPage = null;  String login = "";  String password = "";  NSDictionary actionParams = getParamsFromRequest(request(), null);  String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);  String directVisa = (String) actionParams.valueForKey(DIRECTVISA);  NSMutableDictionary params = new NSMutableDictionary();  if (!MyStringCtrl.isEmpty(projetId)) {   params.put(PROJET_ID_KEY, new Integer(projetId));  }  if (!MyStringCtrl.isEmpty(directVisa)) {   if (directVisa.equals("O") || directVisa.equals("OUI")) {params.put(DIRECTVISA, new Boolean(true));params.put(DIRECTVALIDATE, new Boolean(false));   }  }  laSession().setActionParams(params.immutableClone());  if (useCasService()) {   return loginCASPage();  } else {   nextPage = pageWithName(DAVisaMain.class.getName());   return nextPage;  } }And then When I go to my apps Home, I get the Exception :Example myHome method :   public WOActionResults myHome() {  mySession().resetAll();  ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class.getName()); //mySession().reset();  redirect.setComponent(mySession().myHome());  return redirect; }public Session mySession() {  if (sess == null) {   try {sess = (Session) session();   } catch (Exception e) {sess = new Session();e.printStackTrace();   }  }  return sess; }The Exception occur when to go my apps Home, my apps re-call the session before display homePage.Important : My app use Wrapper.Before using DirectAction to access to my app I never had this kind of exception.Exception : java.lang.IllegalStateException: Trying to check out a session twice in one RR loop: tjRpYltVknbeqG0Eimzt1M at er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389) at com.webobjects.appserver.WOContext.session(WOContext.java:364) at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324) at utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117) at utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640) at com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544) at com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642) at com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332) at com.webobjects.appserver.WOComponent.pageWithName(WOComponent.java:1346) at utt.rec.projet.server.Session.myHome(Session.java:4265) at utt.rec.projet.server.components.EditNextProject.annuler(EditNextProject.java:82) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-09 Thread Chuck Hill

On 2013-12-09 1:20 AM, Raymond NANEON wrote:

Hi Samuel,

I surrounded the mySession() by try - catch because the Exception appear when 
sess = (Session) session(), so I catch the Exception and create a new session.
The problem is not in creating new session but in checking old session.

I initialized mySession with session which come from my DirectAction but I get 
the same Exception : Trying to check out a session twice in one RR loop.

I go to override restoreSessionWithID method and not throwing an Exception, to 
see what will happens.

That is a very bad idea.  You are doing something very wrong somewhere in your 
app that is causing this error.


Chuck


Envoyé depuis iCloud

Le 6 déc. 2013 à 19:21, Samuel Pelletier 
sam...@samkar.commailto:sam...@samkar.com a écrit :

Hi Raymond,

I think the problem come from the mySession() method. You are not supposed to 
create session with new Session(). Why not use the session() method in the 
DirecAction base class?

If the regular session() method throw, there is a problem somewhere else.

Samuel

Le 2013-12-06 à 03:30, Raymond NANEON rnan...@me.commailto:rnan...@me.com a 
écrit :

Hi Samuel and Chuck,

Here is how the exception is occured.
When I use the directAction link generated by my apps to access to a specific 
page all is fine.

Example of my DA :

public WOActionResults visaProjectAction() {
directVisa = true;
WOActionResults nextPage = null;
String login = ;
String password = ;
NSDictionary actionParams = getParamsFromRequest(request(), null);
String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);
String directVisa = (String) actionParams.valueForKey(DIRECTVISA);
NSMutableDictionary params = new NSMutableDictionary();
if (!MyStringCtrl.isEmpty(projetId)) {
params.put(PROJET_ID_KEY, new Integer(projetId));
}
if (!MyStringCtrl.isEmpty(directVisa)) {
if (directVisa.equals(O) || directVisa.equals(OUI)) {
params.put(DIRECTVISA, new Boolean(true));
params.put(DIRECTVALIDATE, new Boolean(false));
}
}
laSession().setActionParams(params.immutableClone());
if (useCasService()) {
return loginCASPage();
} else {
nextPage = pageWithName(DAVisaMain.class.getName());
return nextPage;
}
}

And then When I go to my apps Home, I get the Exception :

Example myHome method :

public WOActionResults myHome() {
mySession().resetAll();
ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class
.getName());
//mySession().reset();
redirect.setComponent(mySession().myHome());
return redirect;
}

public Session mySession() {
if (sess == null) {
try {
sess = (Session) session();
} catch (Exception e) {
sess = new Session();
e.printStackTrace();
}
}
return sess;
}
The Exception occur when to go my apps Home, my apps re-call the session before 
display homePage.
Important : My app use Wrapper.
Before using DirectAction to access to my app I never had this kind of 
exception.

Exception :
java.lang.IllegalStateException: Trying to check out a session twice in one RR 
loop: tjRpYltVknbeqG0Eimzt1M
at 
er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389)
at com.webobjects.appserver.WOContext.session(WOContext.java:364)
at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324)
at 
utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117)
at 
utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at 
com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640)
at 
com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544)
at 
com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642)
at 
com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332)
at com.webobjects.appserver.WOComponent.pageWithName(WOComponent.java:1346)
at utt.rec.projet.server.Session.myHome(Session.java:4265)
at 
utt.rec.projet.server.components.EditNextProject.annuler(EditNextProject.java:82)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-09 Thread Chuck Hill
\On 2013-12-09 2:37 AM, Raymond NANEON wrote:

Hi,
 I always have the Exception, so I rewrote mySession() method. After catching 
Exception, I don't create a new session but use the same like this :

public Session mySession() {
if (sess == null) {
try {
sess = (Session) session();
} catch (Exception e) {
sess = (Session) Session.anySession();

What is anySession()?



sess.awake();
e.printStackTrace();
}
}
return sess;
}

If I comment the argument e.printStackTrace(), the Exception is transparent. 
Time to resolved the issue
What do you think?

Thanks

Envoyé depuis iCloud

Le 9 déc. 2013 à 10:20, Raymond NANEON rnan...@me.commailto:rnan...@me.com 
a écrit :

Hi Samuel,

I surrounded the mySession() by try - catch because the Exception appear when 
sess = (Session) session(), so I catch the Exception and create a new session.
The problem is not in creating new session but in checking old session.

I initialized mySession with session which come from my DirectAction but I get 
the same Exception : Trying to check out a session twice in one RR loop.

I go to override restoreSessionWithID method and not throwing an Exception, to 
see what will happens.

Thanks

Envoyé depuis iCloud

Le 6 déc. 2013 à 19:21, Samuel Pelletier 
sam...@samkar.commailto:sam...@samkar.com a écrit :

Hi Raymond,

I think the problem come from the mySession() method. You are not supposed to 
create session with new Session(). Why not use the session() method in the 
DirecAction base class?

If the regular session() method throw, there is a problem somewhere else.

Samuel

Le 2013-12-06 à 03:30, Raymond NANEON rnan...@me.commailto:rnan...@me.com a 
écrit :

Hi Samuel and Chuck,

Here is how the exception is occured.
When I use the directAction link generated by my apps to access to a specific 
page all is fine.

Example of my DA :

public WOActionResults visaProjectAction() {
directVisa = true;
WOActionResults nextPage = null;
String login = ;
String password = ;
NSDictionary actionParams = getParamsFromRequest(request(), null);
String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);
String directVisa = (String) actionParams.valueForKey(DIRECTVISA);
NSMutableDictionary params = new NSMutableDictionary();
if (!MyStringCtrl.isEmpty(projetId)) {
params.put(PROJET_ID_KEY, new Integer(projetId));
}
if (!MyStringCtrl.isEmpty(directVisa)) {
if (directVisa.equals(O) || directVisa.equals(OUI)) {
params.put(DIRECTVISA, new Boolean(true));
params.put(DIRECTVALIDATE, new Boolean(false));
}
}
laSession().setActionParams(params.immutableClone());
if (useCasService()) {
return loginCASPage();
} else {
nextPage = pageWithName(DAVisaMain.class.getName());
return nextPage;
}
}

And then When I go to my apps Home, I get the Exception :

Example myHome method :

public WOActionResults myHome() {
mySession().resetAll();
ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class
.getName());
//mySession().reset();
redirect.setComponent(mySession().myHome());
return redirect;
}

public Session mySession() {
if (sess == null) {
try {
sess = (Session) session();
} catch (Exception e) {
sess = new Session();
e.printStackTrace();
}
}
return sess;
}
The Exception occur when to go my apps Home, my apps re-call the session before 
display homePage.
Important : My app use Wrapper.
Before using DirectAction to access to my app I never had this kind of 
exception.

Exception :
java.lang.IllegalStateException: Trying to check out a session twice in one RR 
loop: tjRpYltVknbeqG0Eimzt1M
at 
er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389)
at com.webobjects.appserver.WOContext.session(WOContext.java:364)
at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324)
at 
utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117)
at 
utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at 
com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640)
at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-09 Thread Raymond NANEON
Hi Chuck,anySession() is a method which come from ERXSession classpublic static WOSession anySession() {  return (WOSession) ERXThreadStorage.valueForKey("session"); }ThanksEnvoyé depuis iCloudLe 9 déc. 2013 à 16:31, Chuck Hill ch...@global-village.net a écrit :\On 2013-12-09 2:37 AM, "Raymond NANEON" wrote:Hi, I always have the Exception, so I rewrote mySession() method. After catching Exception, I don't create a new session but use the same like this :   public Session mySession() {  if (sess == null) {  try {  sess = (Session) session();  } catch (Exception e) {  sess = (Session) Session.anySession();What is anySession()?  sess.awake();  e.printStackTrace();  }  }  return sess;  }  If I comment the argument "e.printStackTrace()", the Exception is transparent. Time to resolved the issue What do you think?  ThanksEnvoyé depuis iCloud Le 9 déc. 2013 à 10:20, Raymond NANEON rnan...@me.com a écrit : Hi Samuel,  I surrounded the mySession() by "try - catch" because the Exception appear when sess = (Session) session(), so I catch the Exception and create a new session. The problem is not in creating new session but in checking old session.  I initialized mySession with session which come from my DirectAction but I get the same Exception : Trying to check out a session twice in one RR loop.  I go to override restoreSessionWithID method and not throwing an Exception, to see what will happens.  ThanksEnvoyé depuis iCloud Le 6 déc. 2013 à 19:21, Samuel Pelletier sam...@samkar.com a écrit : Hi Raymond,I think the problem come from the "mySession()" method. You are not supposed to create session with new Session(). Why not use the session() method in the DirecAction base class?If the regular session() method throw, there is a problem somewhere else.SamuelLe 2013-12-06 à 03:30, Raymond NANEON rnan...@me.com a écrit :Hi Samuel and Chuck,  Here is how the exception is occured. When I use the directAction link generated by my apps to access to a specific page all is fine.   Example of my DA :  public WOActionResults visaProjectAction() {   directVisa = true;   WOActionResults nextPage = null;   String login = "";   String password = "";   NSDictionary actionParams = getParamsFromRequest(request(), null);   String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);   String directVisa = (String) actionParams.valueForKey(DIRECTVISA);   NSMutableDictionary params = new NSMutableDictionary();   if (!MyStringCtrl.isEmpty(projetId)) {params.put(PROJET_ID_KEY, new Integer(projetId));   }   if (!MyStringCtrl.isEmpty(directVisa)) {if (directVisa.equals("O") || directVisa.equals("OUI")) { params.put(DIRECTVISA, new Boolean(true)); params.put(DIRECTVALIDATE, new Boolean(false));}   }   laSession().setActionParams(params.immutableClone());   if (useCasService()) {return loginCASPage();   } else {nextPage = pageWithName(DAVisaMain.class.getName());return nextPage;   }  }  And then When I go to my apps Home, I get the Exception :  Example myHome method : public WOActionResults myHome() {   mySession().resetAll();   ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class .getName());  //mySession().reset();   redirect.setComponent(mySession().myHome());   return redirect;  }  public Session mySession() {   if (sess == null) {try { sess = (Session) session();} catch (Exception e) { sess = new Session(); e.printStackTrace();}   }   return sess;  } The Exception occur when to go my apps Home, my apps re-call the session before display homePage. Important : My app use Wrapper. Before using DirectAction to access to my app I never had this kind of exception.  Exception :  java.lang.IllegalStateException: Trying to check out a session twice in one RR loop: tjRpYltVknbeqG0Eimzt1M  at er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389)  at com.webobjects.appserver.WOContext.session(WOContext.java:364)  at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324)  at utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117)  at utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52)  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)  at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)  at java.lang.reflect.Constructor.newInstance(Constructor.java:513)  at com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640)  at com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544)  at com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642)  at com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332)  at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-06 Thread Raymond NANEON
Hi Samuel and Chuck,Here is how the exception is occured.When I use the directAction link generated by my apps to access to a specific page all is fine. Example of my DA :public WOActionResults visaProjectAction() {  directVisa = true;  WOActionResults nextPage = null;  String login = "";  String password = "";  NSDictionary actionParams = getParamsFromRequest(request(), null);  String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);  String directVisa = (String) actionParams.valueForKey(DIRECTVISA);  NSMutableDictionary params = new NSMutableDictionary();  if (!MyStringCtrl.isEmpty(projetId)) {   params.put(PROJET_ID_KEY, new Integer(projetId));  }  if (!MyStringCtrl.isEmpty(directVisa)) {   if (directVisa.equals("O") || directVisa.equals("OUI")) {params.put(DIRECTVISA, new Boolean(true));params.put(DIRECTVALIDATE, new Boolean(false));   }  }  laSession().setActionParams(params.immutableClone());  if (useCasService()) {   return loginCASPage();  } else {   nextPage = pageWithName(DAVisaMain.class.getName());   return nextPage;  } }And then When I go to my apps Home, I get the Exception :Example myHome method :   public WOActionResults myHome() {  mySession().resetAll();  ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class.getName()); //mySession().reset();  redirect.setComponent(mySession().myHome());  return redirect; }public Session mySession() {  if (sess == null) {   try {sess = (Session) session();   } catch (Exception e) {sess = new Session();e.printStackTrace();   }  }  return sess; }The Exception occur when to go my apps Home, my apps re-call the session before display homePage.Important : My app use Wrapper.Before using DirectAction to access to my app I never had this kind of exception.Exception : java.lang.IllegalStateException: Trying to check out a session twice in one RR loop: tjRpYltVknbeqG0Eimzt1M at er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389) at com.webobjects.appserver.WOContext.session(WOContext.java:364) at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324) at utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117) at utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640) at com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544) at com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642) at com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332) at com.webobjects.appserver.WOComponent.pageWithName(WOComponent.java:1346) at utt.rec.projet.server.Session.myHome(Session.java:4265) at utt.rec.projet.server.components.EditNextProject.annuler(EditNextProject.java:82) 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:597) at com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636) at com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134) at com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1324) at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1736) at com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447) at com.webobjects.foundation.NSKeyValueCodingAdditions$DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java:212) at com.webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java:1804) at com.webobjects.appserver._private.WOKeyValueAssociation.valueInComponent(WOKeyValueAssociation.java:50) at com.webobjects.appserver._private.WOHyperlink.invokeAction(WOHyperlink.java:98) at er.extensions.components._private.ERXHyperlink.invokeAction(ERXHyperlink.java:60) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at er.extensions.components._private.ERXWOForm.invokeAction(ERXWOForm.java:218) at com.webobjects.appserver._private.WODynamicGroup.invokeChildrenAction(WODynamicGroup.java:105) at com.webobjects.appserver._private.WODynamicGroup.invokeAction(WODynamicGroup.java:115) at 

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-06 Thread Samuel Pelletier
Hi Raymond,

I think the problem come from the mySession() method. You are not supposed to 
create session with new Session(). Why not use the session() method in the 
DirecAction base class?

If the regular session() method throw, there is a problem somewhere else.

Samuel

Le 2013-12-06 à 03:30, Raymond NANEON rnan...@me.com a écrit :

 Hi Samuel and Chuck,
 
 Here is how the exception is occured.
 When I use the directAction link generated by my apps to access to a specific 
 page all is fine. 
 
 Example of my DA :
 
 public WOActionResults visaProjectAction() {
 directVisa = true;
 WOActionResults nextPage = null;
 String login = ;
 String password = ;
 NSDictionary actionParams = getParamsFromRequest(request(), null);
 String projetId = (String) actionParams.valueForKey(PROJET_ID_KEY);
 String directVisa = (String) actionParams.valueForKey(DIRECTVISA);
 NSMutableDictionary params = new NSMutableDictionary();
 if (!MyStringCtrl.isEmpty(projetId)) {
 params.put(PROJET_ID_KEY, new Integer(projetId));
 }
 if (!MyStringCtrl.isEmpty(directVisa)) {
 if (directVisa.equals(O) || directVisa.equals(OUI)) {
 params.put(DIRECTVISA, new Boolean(true));
 params.put(DIRECTVALIDATE, new Boolean(false));
 }
 }
 laSession().setActionParams(params.immutableClone());
 if (useCasService()) {
 return loginCASPage();
 } else {
 nextPage = pageWithName(DAVisaMain.class.getName());
 return nextPage;
 }
 }
 
 And then When I go to my apps Home, I get the Exception :
 
 Example myHome method : 
 
 public WOActionResults myHome() {
 mySession().resetAll();
 ERXRedirect redirect = (ERXRedirect) pageWithName(ERXRedirect.class
 .getName());
 //mySession().reset();
 redirect.setComponent(mySession().myHome());
 return redirect;
 }
 
 public Session mySession() {
 if (sess == null) {
 try {
 sess = (Session) session();
 } catch (Exception e) {
 sess = new Session();
 e.printStackTrace();
 }
 }
 return sess;
 }
 The Exception occur when to go my apps Home, my apps re-call the session 
 before display homePage.
 Important : My app use Wrapper.
 Before using DirectAction to access to my app I never had this kind of 
 exception.
 
 Exception : 
 java.lang.IllegalStateException: Trying to check out a session twice in one 
 RR loop: tjRpYltVknbeqG0Eimzt1M
 at 
 er.extensions.appserver.ERXApplication.restoreSessionWithID(ERXApplication.java:2389)
 at com.webobjects.appserver.WOContext.session(WOContext.java:364)
 at com.webobjects.appserver.WOComponent.session(WOComponent.java:1324)
 at 
 utt.rec.projet.server.components.MonComposant.mySession(MonComposant.java:117)
 at 
 utt.rec.projet.server.components.EnseignantsChercheursView.init(EnseignantsChercheursView.java:52)
 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at 
 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
 at 
 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
 at 
 com.webobjects.foundation._NSUtilities.instantiateObject(_NSUtilities.java:640)
 at 
 com.webobjects.appserver._private.WOComponentDefinition._componentInstanceInContext(WOComponentDefinition.java:544)
 at 
 com.webobjects.appserver._private.WOComponentDefinition.componentInstanceInContext(WOComponentDefinition.java:642)
 at 
 com.webobjects.appserver.WOApplication.pageWithName(WOApplication.java:2332)
 at 
 com.webobjects.appserver.WOComponent.pageWithName(WOComponent.java:1346)
 at utt.rec.projet.server.Session.myHome(Session.java:4265)
 at 
 utt.rec.projet.server.components.EditNextProject.annuler(EditNextProject.java:82)
 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:597)
 at 
 com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636)
 at 
 com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134)
 at 
 com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1324)
 at com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1736)
 at 
 com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447)
 at 
 

java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-05 Thread Raymond NANEON
Hi List,I get this Exception "java.lang.IllegalStateException : Trying to check out a session twice in one RR loop " after using a specific method in my DirectAction, then close the page and go to my apps home.I don't understand what going on.Thanks for your helpEnvoyé depuis iCloud ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: java.lang.IllegalStateException: Trying to check out a session twice in one RR loop

2013-12-05 Thread Chuck Hill
Try logging out a stack trace in Application.restoreSessionWithID().  You must 
be doing something, this is not an easy error to produce.


--
Chuck Hill
Executive Managing Partner, VP Development and Technical Services

Practical WebObjects - for developers who want to increase their overall 
knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/gvc/practical_webobjects

Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing 
Companies in B.C!

Global Village Consulting ranks 44th in 25th annual PROFIT 500 ranking of 
Canada’s Fastest-Growing Companies by PROFIT Magazine!

On 2013-12-05 1:01 AM, Raymond NANEON wrote:

Hi List,

I get this Exception java.lang.IllegalStateException : Trying to check out a 
session twice in one RR loop  after using a specific method in my 
DirectAction, then close the page and go to my apps home.

I don't understand what going on.

Thanks for your help

Envoyé depuis iCloud
 ___
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list  (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com