# Java Connector Architecture Problem



## flashfactor (7. Dez 2005)

Servus einmal.

Ich habe ein JCA gebastelt auf Basis von JCO. Einbindne der Resource in JOnAS geht einwandfrei. Nun wollte ich es austesten aber da kommt immer ein Fehler wo eigentlich kein Fehler sien sollte.

Hier mal der Test-Code

```
32:    try{
33:			InitialContext ic = new InitialContext();
34:			SAPConnectionFactory cf = (SAPConnectionFactory)ic.lookup( "java:comp/env/eis/sap" );
35:			
36:			if( cf == null ){
37:				out.println( "Fehler beim Verbinden mit der Connection Factory!" );
38:			}
39:			SAPConnectionSpec spec = new SAPConnectionSpec("DE", "kag_vmweb", "stipas02");
40:			SAPConnection c = (SAPConnection)cf.getConnection(spec);
41:			
42:			c.close();
43:		}catch(NamingException e){
44:			out.println(e);
45:		}catch(ResourceException e){
46:			out.println(e);
47:		}
```

Und hier nun die Fehlermeldung

```
HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

javax.servlet.ServletException: org/flashfactor/sap/SAPConnectionSpec
	org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:293)
	org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)


root cause 

java.lang.NoClassDefFoundError: org/flashfactor/sap/SAPConnectionSpec
	at.kages.Test.doPost(Test.java:39)
	at.kages.Test.doGet(Test.java:27)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:324)
	org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
	java.security.AccessController.doPrivileged(Native Method)
	javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
	org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275)
	org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)


note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs.


--------------------------------------------------------------------------------

Apache Tomcat/5.5.9
```

Das Problem diese Klasse (SAPConnectionSpec) befindet sich in der RAR und sollte ja normaler weise zugreifbar sein wie die SAPConnection Klasse oder habe ich da einen Denkfehler?

Gruß


----------



## KSG9|sebastian (7. Dez 2005)

ähm..pack die JAR-Datei (in der sich die benötigten Klassen befindne) ins /WEB-INF/lib-Verzeichniss von deiner App, dann dürfte nichts passieren.


----------



## flashfactor (7. Dez 2005)

Wäre dan eigentlich nicht der Ressource-Adapter umsonst?
Oder wäre es nicht besser wenn ich Interface erstelle und die in eine JAR packe?

Gruß


----------



## flashfactor (9. Dez 2005)

Kennt keiner dieses Problem?


----------



## flashfactor (15. Dez 2005)

Ich habe nun aber nur eine allgemeine Frage. Hat jemand schon für JOnAS eigene Resource Adapter entwickelt?

Wenn ja, wäre ich um etwas hilfe stellen sehr dankbar. 

Bekomme immer beim Deployen eine Fehlermeldung.



> Deploy error : *RaJco.rar*
> : org.objectweb.jonas.resource.ResourceServiceException : Error when deploying the rar file: RaJco.rar: org.objectweb.jonas.resource.ResourceServiceException : Error processing Rar: null Unregister also failed with MBeanServer cannot find MBean with ObjectName jonas:type=resourceadapter,name=/C|/Programme/JOnAS-4.5.3/rars/RaJco.rar: java.lang.NullPointerException



mfg


----------



## flashfactor (15. Dez 2005)

Nun habe ich auch einen Resource Adapter 1.0 erstellt. Und nun sagt er dies.


> Deploy error : *RaJco.rar*
> : org.objectweb.jonas.resource.ResourceServiceException : Error when deploying the rar file: RaJco.rar: org.objectweb.jonas.resource.ResourceServiceException : Error processing Rar: org.flashfactor.resource.JCOManagedConnectionFactory: java.lang.ClassNotFoundException: org.flashfactor.resource.JCOManagedConnectionFactory



Die Klasse JCOManagedConnectionFactory ist richtig in der ra.xml eingetragen und die jonas-ra.xml wurde durch das mitgelieferte Tool von JOnAS erzeugt. Sollte also funktionieren. Aber es sieht für mcih so aus als würde er die Klasse JCOMangedConnectionFactory nicht finden.

Falls jemand zum studieren die RAR benötigt sollte er es hier posten.

Gruß


----------

