[webbeans-issues] [JBoss JIRA] Updated: (WBRI-283) Clustered WebBeans, no support for sessionscoped (and higher) replication
John Ament (JIRA)
jira-events at lists.jboss.org
Thu Oct 1 14:46:49 EDT 2009
[ https://jira.jboss.org/jira/browse/WBRI-283?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Ament updated WBRI-283:
----------------------------
Attachment: ClusteredWebBeansTestApp.zip
This is the best I can come up with right now. I'm traveling so maybe next week I can take a closer look. This app will deploy, but not run. Calls to the EWB that's been marked clustered don't work. I believe it will work if you remove @Clustered from the EWB.
There's an ant build script. src/ejb/java and src/web/java are the source dirs. There's a bunch of xml files too.
Once deployed on a single machine you should see it as
http://localhost:8080/cwb-testapp/
But to really test it you'll need 2 jboss instances.
> Clustered WebBeans, no support for sessionscoped (and higher) replication
> -------------------------------------------------------------------------
>
> Key: WBRI-283
> URL: https://jira.jboss.org/jira/browse/WBRI-283
> Project: Web Beans
> Issue Type: Bug
> Components: Scopes & Contexts
> Affects Versions: 1.0.0.PREVIEW1
> Environment: JBoss AS 5.1 + JDK 6
> Reporter: John Ament
> Fix For: 1.0.0.CR2
>
> Attachments: ClusteredWebBeansTestApp.zip
>
>
> From what I can tell, this is what happens.
> Assume you have a 2 node environment w/ apache httpd + mod_jk in front of the jboss servers, used to limit servers exposed + a loadbalancer (F5 ASM) in front of those. The apache servers are only configured to talk to one jboss server each (httpd + jboss are on same box, they only talk to the local client). the f5 serving the initial request is configured for pure round robin (no cookie persistence) and as a result request 1 could go to server 1 and then request 2 goes to server 2.
> Now assume that the two jboss servers are clustered together, the EJBs are clustered and have a cache policy (based on the JBoss annotations). They only have local interfaces. In addition, there are some classes that are only POJOs; but they sit in the ejb module. Based on what's happening these objects should be replicated as part of the HTTP session state.
> A few problems seem to occur when the request goes to the second server after the first request goes to the first server.
> 1. References to the resources required by the EJBs are not injected in the second server. This includes members decorated @Resource or @PersistenceContext
> 2. References to EJBs required at the view level are not restored.
> In addition, concurrent modification exceptions seem to be more likely when deployed like this, resulting in having to downgrade EJBs to POJOs in order to remain stateful.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the weld-issues
mailing list