[JBoss JIRA] Created: (WELD-398) Unable to run translator example with settings for cluster
by Martin Gencur (JIRA)
Unable to run translator example with settings for cluster
----------------------------------------------------------
Key: WELD-398
URL: https://jira.jboss.org/jira/browse/WELD-398
Project: Weld
Issue Type: Bug
Reporter: Martin Gencur
When I try to go to http://localhost:8080/weld-translator after deploying the translator example to JBossAS 6.0.0.M1, exceptions are thrown both at server.log and web browser. The exception are attached as separated files.
Steps to reproduce:
1) add <distributable/> tag to web.xml as it's first tag (at WELD/examples/jsf/translator/war/src/main/webapp/WEB-INF/web.xml)
2) add this content to jboss.xml file at WELD/examples/jsf/translator/ejb/src/main/resources/META-INF/jboss.xml :
<?xml version="1.0" encoding="UTF-8"?>
<jboss xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee jboss_5_0.xsd"
version="5.0">
<enterprise-beans>
<session>
<!-- stateless bean -->
<ejb-name>SentenceTranslator</ejb-name>
<clustered>true</clustered>
</session>
<session>
<!-- stateful bean -->
<ejb-name>TranslatorControllerBean</ejb-name>
<clustered>true</clustered>
</session>
</enterprise-beans>
</jboss>
3) download jboss-6.0.0.M1 (for example from http://reports.qa.atl.jboss.com/release_tests/binaries/JBossAS/jboss-6.0....)
4) unzip it twice to different folders
5) now you have to update both the JBoss AS instances with current version of WELD core (from WELD/core)
6) run the first instance from its bin directory: ./run.sh -c all -g DocsPartition -u 239.255.101.101 -b localhost -Djboss.messaging.ServerPeerID=1 -Djboss.service.binding.set=ports-default
7) run the second instance from its bin directory: ./run.sh -c all -g DocsPartition -u 239.255.101.101 -b localhost -Djboss.messaging.ServerPeerID=2 -Djboss.service.binding.set=ports-01
8) clean and build the application: run mvn clean package in examples/jsf/translator
9) copy resulting ear file (weld-numberguess.war) from translator/ear/target/ directory to serve/all/farm directory at first jbossAS instance
10) go to http://localhost:8080/weld-translator
11) now you can see both exception in server.log and web browser
--
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
12 years, 8 months
[JBoss JIRA] Created: (WELD-734) Support @EJB injection in pre-Java EE 6 environments
by Dan Allen (JIRA)
Support @EJB injection in pre-Java EE 6 environments
----------------------------------------------------
Key: WELD-734
URL: https://jira.jboss.org/browse/WELD-734
Project: Weld
Issue Type: Feature Request
Components: Servlet Container Support
Affects Versions: 1.1.0.Beta1
Reporter: Dan Allen
Priority: Minor
Add support for the injection of EJBs into CDI beans (via the @EJB annotation) in Weld Servlet for use in pre-Java EE 6 environments. This feature would enable more developers to immeidately switch to CDI despite having to use an older platform.
The best strategy to take to implement this feature would be to leverage Weld's EjbServices SPI interface (http://docs.jboss.org/weld/reference/latest/en-US/html/ri-spi.html) on a per container basis (in the same way Weld is integrated into the Java EE 6 containers).
Currently, the Weld Listener doesn't provide any hooks to register services before it starts the container. We could redesign the Listener to support providing the EjbServices implementation (and perhaps other service implementations) in a listener subclass.
It's unlikely we can fully implement EJB integration in pre EE6 environments as (at least in JBoss AS and GlassFish) as some of the hooks (specifically the hooks to remove EJBs on demand) are missing. However, basic injection would cover ~80% of the cases.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 8 months
[JBoss JIRA] Created: (WELDX-74) Support use of decorator of Callable<T>
by Elias Ross (JIRA)
Support use of decorator of Callable<T>
---------------------------------------
Key: WELDX-74
URL: https://jira.jboss.org/jira/browse/WELDX-74
Project: Weld Extensions
Issue Type: Feature Request
Components: Java SE
Reporter: Elias Ross
Decorator exists for Runnable. Should allow for Callable<T> to be used as well.
This is actually pretty useful, for example if you want to execute under a temporary new scope in the same thread, e.g.
@Inject Instance<PaymentProcessor> paymentProcessorSource; // which implements Callable<Result>
Result result = paymentProcessorSource.get().call();
Or, in the case of a thread pool, you can use Future<T> etc.
/**
* Decorator for all beans which implements Callable. It intercepts the call
* to the call() method to set up the ThreadContext for the new thread so that
* instances of @ThreadScoped beans can be correctly resolved.
*/
@Decorator
public class CallableDecorator<T> implements Callable<T> {
@Inject @Delegate Callable<T> callable;
/**
* Set up the ThreadContet and delegate.
*/
public T call()
{
// set up context for this thread
final ThreadContext threadContext = WeldSEBeanRegistrant.THREAD_CONTEXT;
threadContext.setBeanStore(new HashMapBeanStore());
threadContext.setActive(true);
// run the original thread
try {
return callable.call();
} finally {
threadContext.destroy();
}
}
--
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
12 years, 9 months