This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I am trying to connect to a j2EE security enabled system using Programmatic login using the userId and Password but the subject object returned from lc.getSubject() is just Subject: . it is not even null though. My login is successful, but for subject object it is returning Subject: and when i go to next line i.e. WSSubject.setRunAsSubject() it is throwing me a null pointer exception.
Why is this happening. I am using JDK1.3 and is it because the JAAS is not compatible with JDK1.3 version. If it is so, how should i be able to establish a connection to j2EE secured application.
Any help is appreciated . Thanks in advance!
LoginContext lc = new LoginContext("WSLogin", new WSCallbackHandlerImpl(username, "realm", password));
log.info("Login done successfully " );
log.info("about to get subject");
Subject sub = lc.getSubject(); System.out.println("subject is:sub" );
Here is the message is am receiving when i try to establish a connection:
[7/6/09 12:32:22:334 EDT] 0000002e SystemOut O Login done successfully
[7/6/09 12:32:22:334 EDT] 0000002e SystemOut O about to get subject
[7/6/09 12:32:22:334 EDT] 0000002e SystemOut O subject is:Subject:
[7/6/09 12:32:22:350 EDT] 0000002e ExceptionUtil E CNTR0020E: EJB threw an unexpected (non-declared) exception during invocation of method. Exception data: java.lang.NullPointerException at com.ibm.ws.security.auth.distContextManagerImpl.isWSSubject(distContextManagerImpl.java:605)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java(Compiled Code))
I am surprised !!! There is no reply from any rancher...
There are must be intelligent ranchers available on this forum..
Please reply soon...
Joined: Jul 06, 2009
Assuming that you are testing in RAD and that you are connecting to an EJB instance :
Is you application server enabled for global security ?
If your app server is not enabled with Global security , you see null subject. So either you have to enable Global Security on local env or you should be using WebService instance of the service(if available)..
Joined: Aug 01, 2008
YOu are correct...i am working with RAD7.5 and WAS 6.1... I am new with WAS...
So could you please tell me how to enable Global security ?