bijection test - not working
giunad May 26, 2009 11:43 AMHi,
I'm facing this problem: after autentication, a new bean is created and put into seam context. the bean is an account bean that should be accesible from everywhere.
so I'm testing bijection in a simple case: 2 form. the first one create the bean marked with @Out and the second one get it with @In.
I miss some thing. I get the following error:
Caused by: org.jboss.seam.RequiredException: @Out attribute requires non-null value: myform.myentity
at org.jboss.seam.Component.outjectAttribute(Component.java:1731)
at org.jboss.seam.Component.outjectAttributes(Component.java:1722)
at org.jboss.seam.Component.outject(Component.java:1575)
at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:86)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:31)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50)
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 org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
... 114 more
here is the first bean
@Stateful @Name("myform") public class MyformBean implements Myform { @Out MyEntity myentity; private String value; public void myform() { myentity = new MyEntity(); myentity.setName("form value: "+value); } public String getValue() { return value; } public void setValue(String value) { this.value = value; } @Destroy @Remove public void destroy() { } }
and the second one
@Stateful @Name("MyForm2") public class MyForm2Bean implements MyForm2 { @In MyEntity myentity; private String value; public void myForm2() { System.out.println("MyForm2.myForm2(): " + myentity.getName()); } public String getValue() { return value; } public void setValue(String value) { this.value = value; } @Destroy @Remove public void destroy() { } }
entity bean is a bean with just one property: name.
It seams to me that all I do is very similar to what I read on tutorial and forums. Yes.. it's driving me crazy..
Just one note: in jboss log I see
22:26:13,912 WARN DeploymentInfo Only the root deployment can set the loader repository, ignoring config LoaderRepositoryConfig repositoryName: seam.jboss.org:loader mytest, repositoryClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3, configParserClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3ConfigParser, repositoryConfig: java2ParentDelegation false
Could a class loader error explain all that?
Any help will be very appreciated.
(sorry for my english)