Spring Problem: AOP configuration seems to be invalid

manusch

Grünschnabel
Hallo,

ich benutze den JBoss 4.2.1 Server. Spring, JPA mit Hibernate.
Ich habe eine Webapplikation und versuche nun über den Client eine Bean aufzurufen. Diese soll einfach meine eingegebenen Daten wegspeichern. Die Bean wurde auch schon im JBoss registriert.

Mein Deployment hat die folgenden Hierarchy:

*.sar
- WEB-INF
-lib
SpeicherBean.jar
GUI.jar
Spring.jars

-*.war
weitere jars.

Die Fehlermeldung lautet:

org.springframework.aop.AopInvocationException: AOP configuration seems to be invalid: tried calling method [public abstract com.myapp.MyObject
com.myapp.Object.ObjectRepository.save(com.myapp.M yObject)] on target [jboss.j2ee:jar=my-app.jar,name=ObjectRepositoryEJB,service=EJB3]; nested exception is java.lang.IllegalArgumentException: object is not an instance of declaring class
javax.faces.el.EvaluationException: org.springframework.aop.AopInvocationException: AOP configuration seems to be invalid: tried calling method [public abstract com.myapp.MyObject com.myapp.Object.ObjectRepository.save(com.myapp.M yObject)] on target [jboss.j2ee:jar=my-app.jar,name=ObjectRepositoryEJB,service=EJB3]; nested exception is java.lang.IllegalArgumentException: object is not an instance of declaring class
at javax.faces.component.MethodBindingMethodExpressio nAdapter.invoke(MethodBindingMethodExpressionAdapt er.java:91)

Kann mir da jemand helfen ?

Gruesse,
manusch
 
Hallo,

du verwendest wahrscheinlich von Spring erzeugte Proxies (Transaction Proxies, etc.) bei denen du in der Konfiguration bei Proxy Interface ein "falsches" Interface angegeben hast (Wird nicht vom Zielobjekt implementiert etc.).

Gruß Tom
 
du verwendest wahrscheinlich von Spring erzeugte Proxies (Transaction Proxies, etc.) bei denen du in der Konfiguration bei Proxy Interface ein "falsches" Interface angegeben hast

Danke für die Antwort. In der spring-service.xml ist das procyInterface angegeben

<property name="proxyInterface"
value="com.myapp.ObjektRepository" />

Jedoch hatte ich vergessen die jndi.properties richtig einzutragen.

java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:eek:rg.jnp.interfaces
java.naming.provider.url=localhost:1099

Jetzt funktioniert es!
 

Neue Beiträge

Zurück