[jboss-jira] [JBoss JIRA] (WFLY-776) Inject POJO to MBean by using <inject bean="XXX"> in jboss-service.xml does not work in SAR
Tomek Adamski (JIRA)
jira-events at lists.jboss.org
Sun Dec 8 16:23:06 EST 2013
[ https://issues.jboss.org/browse/WFLY-776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12929361#comment-12929361 ]
Tomek Adamski commented on WFLY-776:
------------------------------------
I was able to reproduce the same error that is described. I have found out that it occurrs because mbean and pojo are two different subsystems which are not related to eachother. As a result of that, when mbean subsystem encounters "inject bean" tag it looks for mbean (not pojo) of a given name and if such mbean does not exists it stops deployment of mbean with an error.
I'm wondering how this problem should be solved. There is a possibility of adding such feature but at the first glance, I see the following problems with that:
- it leads to dependence (service naming etc.) between two subsystems
- it can possibly lead to xml syntax change (in order to distinguish between injection of mbean or pojo bean)
Can someone please suggest wheter such extension is desirable?
> Inject POJO to MBean by using <inject bean="XXX"> in jboss-service.xml does not work in SAR
> -------------------------------------------------------------------------------------------
>
> Key: WFLY-776
> URL: https://issues.jboss.org/browse/WFLY-776
> Project: WildFly
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: JMX, POJO
> Reporter: Masafumi Miura
> Attachments: HelloService-AS7-inject-reproducer.tar.gz
>
>
> When injecting POJO to MBean by using {{<inject bean="myTask"/>}} in {{jboss-service.xml}} of SAR like the following:
> * META-INF/jboss-service.xml:
> {code:xml}
> <server>
> <mbean code="com.redhat.jboss.support.HelloService"
> name="example:type=HelloService,service=Hello">
> <attribute name="Message">Hello!!</attribute>
> <attribute name="Task"><inject bean="myTask"/></attribute>
> </mbean>
> </server>
> {code}
> * META-INF/jboss-beans.xml:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <deployment ... >
> <bean name="myTask" class="com.redhat.jboss.support.SimpleTask">
> </bean>
> </deployment>
> {code}
> Then the following ERROR is happened at deployment of SAR:
> {noformat:title=7.1.4.Final}
> ERROR [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-2" => {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.mbean.service.example:type=HelloService,service=Hello.start Missing[jboss.mbean.service.myTask.start]","jboss.mbean.registration.example:type=HelloService,service=Hello Missing[JBAS014861: <one or more transitive dependencies>]","jboss.mbean.service.example:type=HelloService,service=Hello.create Missing[jboss.mbean.service.myTask.create]"]}}}
> {noformat}
> {noformat:title=7.2.0.Alpha1}
> ERROR [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "HelloService.sar" was rolled back with the following failure message:
> {"JBAS014771: Services with missing/unavailable dependencies" => [
> "jboss.mbean.service.example:type=HelloService,service=Hello.start is missing [jboss.mbean.service.myTask.start]",
> "jboss.mbean.service.example:type=HelloService,service=Hello.create is missing [jboss.mbean.service.myTask.create]"
> ]}
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list