Hi,

this was not the problem, but I found the solution.

I had a different openejb JAR File in the build path than the server was
working with.

So the serial version id was different and this was the problem.

Thanks @all for your help. Now its working.



vhnguy2 wrote:
> 
> Maybe ProjectDSP has some security settings on it. Try adding this line to
> it
> 
> properties.setProperty("openejb.authentication.realmName",
> "geronimo-admin");
> 
> --Viet
> 
> On Jan 24, 2008 7:48 AM, xypher <[EMAIL PROTECTED]> wrote:
>>
>> Hi,
>>
>> thanks a lot, now it works. But not completely ....
>>
>> When I'm trying the following code:
>>
>> public class TestClient {
>>
>>         public static void main(String[] args) {
>>
>>                 Context context;
>>                 Properties properties = new Properties();
>>         properties.setProperty(Context.INITIAL_CONTEXT_FACTORY,
>> "org.apache.openejb.client.RemoteInitialContextFactory");
>>         properties.setProperty(Context.PROVIDER_URL,
>> "ejbd://localhost:4201");
>>                 properties.put("java.naming.security.principal",
>> "system");
>>                 properties.put("java.naming.security.credentials",
>> "manager");
>>
>>                 try {
>>                         context = new InitialContext(properties);
>>
>>                         IProjectDSP projectDSP = (IProjectDSP)
>> context.lookup("ProjectDSPRemote");
>> //                      Project p1 = new Project();
>> //                      p1.setName("Test");
>> //                      projectDSP.createProject(p1);
>>                 } catch (NamingException e) {
>>                         e.printStackTrace();
>>                         throw new RuntimeException(e);
>>                 }
>>         }
>> }
>>
>> I'm getting this exception:
>>
>> javax.naming.AuthenticationException: This principle is not authorized.
>>         at
>> org.apache.openejb.client.JNDIContext.authenticate(JNDIContext.java:150)
>>         at
>> org.apache.openejb.client.JNDIContext.getInitialContext(JNDIContext.java:122)
>>         at javax.naming.spi.NamingManager.getInitialContext(Unknown
>> Source)
>>         at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
>>         at javax.naming.InitialContext.init(Unknown Source)
>>         at javax.naming.InitialContext.<init>(Unknown Source)
>>         at TestClient.main(TestClient.java:24)
>> Exception in thread "main" java.lang.RuntimeException:
>> javax.naming.AuthenticationException: This principle is not authorized.
>>         at TestClient.main(TestClient.java:32)
>> Caused by: javax.naming.AuthenticationException: This principle is not
>> authorized.
>>         at
>> org.apache.openejb.client.JNDIContext.authenticate(JNDIContext.java:150)
>>         at
>> org.apache.openejb.client.JNDIContext.getInitialContext(JNDIContext.java:122)
>>         at javax.naming.spi.NamingManager.getInitialContext(Unknown
>> Source)
>>         at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
>>         at javax.naming.InitialContext.init(Unknown Source)
>>         at javax.naming.InitialContext.<init>(Unknown Source)
>>         at TestClient.main(TestClient.java:24)
>>
>> When I don't use a principal, I'm getting this error:
>>
>> Exception in thread "main" java.lang.RuntimeException:
>> javax.naming.NamingException: Cannot lookup '/ProjectDSPRemote'. [Root
>> exception is java.rmi.RemoteException: Cannot read the response from the
>> server (OEJP/2.0) : org.apache.openejb.client.EJBMetaDataImpl; local
>> class
>> incompatible: stream classdesc serialVersionUID = 2128092884552388429,
>> local
>> class serialVersionUID = -7734383756981201981; nested exception is:
>>         java.io.InvalidClassException:
>> org.apache.openejb.client.EJBMetaDataImpl;
>> local class incompatible: stream classdesc serialVersionUID =
>> 2128092884552388429, local class serialVersionUID = -7734383756981201981]
>>         at TestClient.main(TestClient.java:32)
>> Caused by: javax.naming.NamingException: Cannot lookup
>> '/ProjectDSPRemote'.
>> [Root exception is java.rmi.RemoteException: Cannot read the response
>> from
>> the server (OEJP/2.0) : org.apache.openejb.client.EJBMetaDataImpl; local
>> class incompatible: stream classdesc serialVersionUID =
>> 2128092884552388429,
>> local class serialVersionUID = -7734383756981201981; nested exception is:
>>         java.io.InvalidClassException:
>> org.apache.openejb.client.EJBMetaDataImpl;
>> local class incompatible: stream classdesc serialVersionUID =
>> 2128092884552388429, local class serialVersionUID = -7734383756981201981]
>>         at
>> org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:203)
>>         at javax.naming.InitialContext.lookup(Unknown Source)
>>         at TestClient.main(TestClient.java:26)
>> Caused by: java.rmi.RemoteException: Cannot read the response from the
>> server (OEJP/2.0) : org.apache.openejb.client.EJBMetaDataImpl; local
>> class
>> incompatible: stream classdesc serialVersionUID = 2128092884552388429,
>> local
>> class serialVersionUID = -7734383756981201981; nested exception is:
>>         java.io.InvalidClassException:
>> org.apache.openejb.client.EJBMetaDataImpl;
>> local class incompatible: stream classdesc serialVersionUID =
>> 2128092884552388429, local class serialVersionUID = -7734383756981201981
>>         at
>> org.apache.openejb.client.Client.processRequest(Client.java:197)
>>         at org.apache.openejb.client.Client.request(Client.java:43)
>>         at
>> org.apache.openejb.client.JNDIContext.request(JNDIContext.java:74)
>>         at
>> org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:197)
>>         ... 2 more
>> Caused by: java.io.InvalidClassException:
>> org.apache.openejb.client.EJBMetaDataImpl; local class incompatible:
>> stream
>> classdesc serialVersionUID = 2128092884552388429, local class
>> serialVersionUID = -7734383756981201981
>>         at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
>>         at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
>>         at java.io.ObjectInputStream.readClassDesc(Unknown Source)
>>         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
>>         at java.io.ObjectInputStream.readObject0(Unknown Source)
>>         at java.io.ObjectInputStream.readObject(Unknown Source)
>>         at
>> org.apache.openejb.client.JNDIResponse.readExternal(JNDIResponse.java:64)
>>         at
>> org.apache.openejb.client.Client.processRequest(Client.java:192)
>>         ... 5 more
>>
>> Normaly the system user should work.
>>
>> Any idea?
>>
>> Thanks
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Geronimo-2-EJB3-Remote-Access-Example-tp15053984s134p15063643.html
>>
>> Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
>>
>>
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Geronimo-2-EJB3-Remote-Access-Example-tp15053984s134p15065739.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.

Reply via email to