[weld-issues] [JBoss JIRA] Commented: (WELDX-79) Unable to run project generated by weld archetype weld-jsf-jee with JBoss 6.0.0.M2

Andy Gibson (JIRA) jira-events at lists.jboss.org
Fri Apr 16 14:36:26 EDT 2010


    [ https://jira.jboss.org/jira/browse/WELDX-79?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12526268#action_12526268 ] 

Andy Gibson commented on WELDX-79:
----------------------------------

The problem is that when the project is deployed, it is deployed as EJB 3.0, therefore local interfaces are still required. There are two possible fixes for this, both of which I've tested and they work : 

1) Create a local interface for the WidgetRepositoryProducer bean and implement it in that class  (see below)
2) Remove the @Stateless annotation from the WidgetRepositoryProducer bean so that it is not  an EJB and thus requires no local interface.

Well, there is a third option which is wait until JBoss 6.0 implements EJB 3.1 

Cheers,

Andy Gibson




Local Interface : 

import javax.ejb.Local;

@Local
public interface WidgetRepositoryProducerLocal {

	public abstract EntityManager retrieveEntityManager();

	public abstract void disposeEntityManager(EntityManager em);

}

Just change the WidgetRepositoryProducer  so it implements this interface : 

@Stateless
public class WidgetRepositoryProducer implements WidgetRepositoryProducerLocal
{


> Unable to run project generated by weld archetype weld-jsf-jee with JBoss 6.0.0.M2
> ----------------------------------------------------------------------------------
>
>                 Key: WELDX-79
>                 URL: https://jira.jboss.org/jira/browse/WELDX-79
>             Project: Weld Extensions
>          Issue Type: Bug
>          Components: Archetypes
>    Affects Versions: Archetypes 1.0.0.Beta1
>         Environment: JBoss AS 6.0.0.M2 updated with current trunk of WELD
>            Reporter: Martin Gencur
>            Assignee: Steven Boscarine
>         Attachments: myproject3.zip
>
>
> A project generated and deployed by the following commands 
> 1) mvn archetype:generate -DinteractiveMode=n -DarchetypeArtifactId=weld-jsf-jee -DarchetypeGroupId=org.jboss.weld.archetypes -DarchetypeVersion=1.0.0-BETA1 -DgroupId=com.mycompany -DartifactId=myproject3 -Dmaven.repo.local=/my/tmp/dir/
> 2) mvn package jboss:hard-deploy (after setting JBOSS_HOME to point to JBoss AS 6.0.0.M2)
> causes the following exception to be thrown during deployment:
> 14:38:58,583 INFO  [org.jboss.weld.Version] WELD-000900 1.0.1 (SNAPSHOT)
> 14:38:58,623 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Start: name=vfszip:/home/mgencur/Java/jboss-6.0.x/jboss-6.0.0-M2/server/default/deploy/myproject3.war/_WeldBootstrapBean state=Create: org.jboss.weld.exceptions.DefinitionException: WELD-000068 Method org.jboss.weld.bean-flat-DisposalMethod-com.mycompany.WidgetRepositoryProducermethod disposeEntityManager(javax.persistence.EntityManager) must be declared on a business interface of org.jboss.weld.bean-flat-SessionBean-WidgetRepositoryProducer
> 	at org.jboss.weld.bean.DisposalMethod.checkDisposalMethod(DisposalMethod.java:225)
> 	at org.jboss.weld.bean.DisposalMethod.initialize(DisposalMethod.java:77)
> 	at org.jboss.weld.bootstrap.AbstractBeanDeployer.createDisposalMethods(AbstractBeanDeployer.java:187)
> 	at org.jboss.weld.bootstrap.AbstractBeanDeployer.createObserversProducersDisposers(AbstractBeanDeployer.java:170)
> 	at org.jboss.weld.bootstrap.AbstractBeanDeployer.createSessionBean(AbstractBeanDeployer.java:264)
> 	at org.jboss.weld.bootstrap.BeanDeployer.createBeans(BeanDeployer.java:117)
> 	at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:151)
> 	at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:374)
> 	at org.jboss.weld.integration.deployer.env.helpers.BootstrapBean.boot(BootstrapBean.java:121)
> 	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.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:59)
> 	at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:151)
> 	at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
> 	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:257)
> 	at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
> 	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:125)
> 	at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:72)
> 	at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:202)
> 	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
> 	at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
> 	at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
> 	at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
> 	at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:378)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2029)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1050)
> 	at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1289)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1213)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1107)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:873)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:620)
> 	at org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:180)
> 	at org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:58)
> 	at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
> 	at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55)
> 	at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1660)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1378)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1399)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1319)
> 	at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:378)
> 	at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2029)
> 	at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1050)
> 	at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1289)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1213)
> 	at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1107)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:918)
> 	at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:633)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:898)
> 	at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:677)
> 	at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
> 	at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:409)
> 	at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> 	at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> 14:38:58,655 INFO  [org.jboss.web.tomcat.service.deployers.TomcatDeployment] deploy, ctxPath=/myproject3
> 14:38:58,674 INFO  [javax.enterprise.resource.webcontainer.jsf.config] Initializing Mojarra 2.0.2 (FCS b10) for context '/myproject3'
> 14:39:03,058 WARN  [org.jboss.weld.Servlet] WELD-000700 Not starting Weld/Servlet integration as Weld failed to initialize
> 14:39:03,065 WARN  [org.jboss.system.server.profileservice.hotdeploy.HDScanner] Failed to process changes: org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
> DEPLOYMENTS MISSING DEPENDENCIES:
>   Deployment "vfszip:/home/mgencur/Java/jboss-6.0.x/jboss-6.0.0-M2/server/default/deploy/myproject3.war/_WBInjector" is missing the following dependencies:
>     Dependency "vfszip:/home/mgencur/Java/jboss-6.0.x/jboss-6.0.0-M2/server/default/deploy/myproject3.war/_WeldBootstrapBean" (should be in state "Installed", but is actually in state "**ERROR**")
> DEPLOYMENTS IN ERROR:
>   Deployment "vfszip:/home/mgencur/Java/jboss-6.0.x/jboss-6.0.0-M2/server/default/deploy/myproject3.war/_WeldBootstrapBean" is in error due to the following reason(s): org.jboss.weld.exceptions.DefinitionException: WELD-000068 Method org.jboss.weld.bean-flat-DisposalMethod-com.mycompany.WidgetRepositoryProducermethod disposeEntityManager(javax.persistence.EntityManager) must be declared on a business interface of org.jboss.weld.bean-flat-SessionBean-WidgetRepositoryProducer, **ERROR**
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1198)
> 	at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1144)
> 	at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:848)
> 	at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.checkComplete(MainDeployerAdapter.java:128)
> 	at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:416)
> 	at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:294)
> 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> 	at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> 	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
> 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> Of course...the application doesn't work.
> The other 2 archetype types work fine.

-- 
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