[jboss-jira] [JBoss JIRA] (WFLY-6566) SAR deployer uses wrong MBean class to resolve source Method for property injection

RH Bugzilla Integration (JIRA) issues at jboss.org
Wed Apr 27 16:30:01 EDT 2016


    [ https://issues.jboss.org/browse/WFLY-6566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13198077#comment-13198077 ] 

RH Bugzilla Integration commented on WFLY-6566:
-----------------------------------------------

Bartek Spyrko-Smietanko <bspyrkos at redhat.com> changed the Status of [bug 1329314|https://bugzilla.redhat.com/show_bug.cgi?id=1329314] from ASSIGNED to POST

> SAR deployer uses wrong MBean class to resolve source Method for property injection
> -----------------------------------------------------------------------------------
>
>                 Key: WFLY-6566
>                 URL: https://issues.jboss.org/browse/WFLY-6566
>             Project: WildFly
>          Issue Type: Bug
>          Components: JMX, Server
>    Affects Versions: 10.0.0.Final
>            Reporter: Bartosz Spyrko-Śmietanko
>            Assignee: Bartosz Spyrko-Śmietanko
>
> If using a <value-factory> or <inject> element with "parameter" attribute in jboss-service.xml to inject a value from one bean to another, a "java.lang.IllegalArgumentException: object is not an instance of declaring class" error is raised during deployment.
> jboss-service.xml
> {noformat}
> <server xmlns="urn:jboss:service:7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
>     <mbean code="com.test.redhat.mbean.OtherValueFactory" name="test:type=OtherValueFactory">
>         <attribute name="WelcomeString">Welcome</attribute>
>         <attribute name="CustName">Other</attribute>
>     </mbean>
>     <mbean code="com.test.redhat.mbean.TestValueFactory" name="test:type=SarTestValueFactory">
>         <depends>test:type=OtherValueFactory</depends>
>         <attribute name="WelcomeString">Welcome</attribute>
>         <attribute name="CustName">
>             <value-factory bean="test:type=OtherValueFactory" method="getNameOfCustomer">
>                 <parameter class="java.lang.String">Alain Van Daele</parameter>
>             </value-factory>
>         </attribute>
>     </mbean>
> </server>
> {noformat}
> Full error:
> {noformat}
> 16:54:36,505 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "test.sar" (runtime-name: "test.sar")
> 16:54:36,690 WARN  [org.jboss.msc.inject] (MSC service thread 1-2) MSC000100: Unexpected failure to uninject public void com.test.redhat.mbean.TestValueFactory.setCustName(java.lang.String): java.lang.NullPointerException
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
> 	at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
> 	at org.jboss.msc.value.Values.getValues(Values.java:68)
> 	at org.jboss.msc.value.Values.getValues(Values.java:82)
> 	at org.jboss.msc.inject.MethodInjector.uninject(MethodInjector.java:119)
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1923)
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> 	at java.lang.Thread.run(Thread.java:745)
> 16:54:36,691 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.mbean.service.test:type=SarTestValueFactory.create: org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> 	at java.lang.Thread.run(Thread.java:745)
> Caused by: org.jboss.msc.inject.InjectionException: Injection failed
> 	at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:102)
> 	at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672)
> 	at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51)
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917)
> 	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
> 	... 3 more
> Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
> 	at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
> 	at org.jboss.msc.value.Values.getValues(Values.java:68)
> 	at org.jboss.msc.value.Values.getValues(Values.java:82)
> 	at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:92)
> 	... 7 more
> 16:54:36,697 INFO  [com.test.redhat.mbean.OtherValueFactory] (ServerService Thread Pool -- 58)  >> TestValuFactory.start() invoked
> 16:54:36,698 INFO  [stdout] (ServerService Thread Pool -- 58) TestValuFactory.start() invoked
> 16:54:36,776 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 1) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "test.sar")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.mbean.service.test:type=SarTestValueFactory.create" => "org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
>     Caused by: org.jboss.msc.inject.InjectionException: Injection failed
>     Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class"}}
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)



More information about the jboss-jira mailing list