Hi,
I managed to deploy the components manually by dropping them into the
deploy folder. Therefore I just took a look at the servicemix-jbi plugin
code. It seems that there is a bug in there that causes the trouble.
Please correct me if I am wrong.
The class org.apache.servicemix.maven.plugin.jbi.IsDeployedTask uses the
AdminCommandsServiceMBean to check if the components are deployed.
It calls the method isResultContaining on the result of the method call
to listComponents of the AdminCommandsServiceMBean.
isResultContaining(result, "service-engine", name) ||
isResultContaining(result, "binding-component", name)
private boolean isResultContaining(String result, String t, String n) {
String componentLine = "<component-info type='" + t + "' name='" +
n + "'";
return result.contains(componentLine);
}
So for servicemix-jms for example it would look for
<component-info type='service-engine' name='servicemix-jms'
or
<component-info type='binding-component' name='servicemix-jms'
Yet this MBean return values look like this:
<component-info type='Component' name='servicemix-jms'
so there seems to have been an update of the MBean changing the
service-engine/binding-component type value to 'Component', which is not
reflected in the newest version of the Maven plugin (4.4-SNAPSHOT).
Will there be a new version of the maven plugin any time soon, or will
this issue be resolved in another way?
Kind regards,
Michael Handler
Am 09.04.2010 13:55, schrieb Handler Michael:
Hi,
I just found out another interesting thing:
If i manually shutdown (jbi:shutdown) and uninstall
(features:uninstall) servicemix-jms the deployment works for
servicemix-jms.
kind regards,
Michael Handler
Am 09.04.2010 13:41, schrieb Handler Michael:
Hi,
Hm... I could but it would mean a lot of work (a days worth at least
- the project uses features introduced/changed in 1.6 extensively,
like @Override, etc...).
Do you really think this is a problem caused by a different jdk
version? In SeriviceMix 3.3.1 these components worked just fine (with
jdk 1.6) and the
serivcemix components that are present (like servicemix-jms) are not
deployed again. In ServiceMix 4.0.0 the deployment also works without
any problems.
Now in ServiceMix 4.1.0-Snapshot there is this trouble with
deployment. I think the root cause is that the the system tries to
deploy the servicemix components although they are already there as
jbi:list shows:
Components
----------
State Name Description
[Started ] [servicemix-http ]
[Started ] [servicemix-jms ]
[Started ] [servicemix-drools ]
[Started ] [servicemix-bean ]
...
The exceptions happen when one of these four components is deployed.
Any idea why the components are deployed again although they are
already present and started?
kind regards,
Michael Handler
Am 08.04.2010 12:49, schrieb Jean-Baptiste Onofré:
Could you make a try using JDK 1.5 ?
-----Original Message-----
From: Handler Michael<[email protected]>
Date: Thu, 08 Apr 2010 12:09:23
To:<[email protected]>
Cc:<[email protected]>
Subject: Re: problem deploying servicemix http
Hi,
I use jdk version 1.6.0_16
regards,
Michael Handler
Am 07.04.2010 16:26, schrieb Jean-Baptiste Onofré:
Hi,
Which jdk version do you use ?
Regards
JB
-----Original Message-----
From: Michael Handler<[email protected]>
Date: Wed, 07 Apr 2010 13:33:10
To:<[email protected]>
Cc:<[email protected]>
Subject: Re: problem deploying servicemix http
Hi!
I have investigated the issue more thoroughly and found out that
all our
service units fail whose service-engines are servicemix-components. So
servicemix-http, servicemix-bean, servicemix-jms and servicemix-drools
service-units all fail with exceptions similar to the one I mentioned
below or sometimes with the exception directly below. We use for our
components the versions 2010.01 and have moved to the next Snapshot of
ServiceMix 4.1.0 (build 221).
Here is the stacktrace:
javax.jbi.JBIException: java.lang.reflect.InvocationTargetException
at
org.apache.servicemix.jbi.deployer.impl.ComponentInstaller.install(ComponentInstaller.java:159)
...
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor33.invoke(Unknown
Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.geronimo.blueprint.container.AbstractServiceReferenceRecipe$JdkProxyFactory$1.invoke(AbstractServiceReferenceRecipe.java:561)
at $Proxy30.manageObject(Unknown Source)
at
org.apache.servicemix.jbi.deployer.impl.Deployer.registerComponent(Deployer.java:441)
at
org.apache.servicemix.jbi.deployer.impl.ComponentInstaller.initComponent(ComponentInstaller.java:427)
at
org.apache.servicemix.jbi.deployer.impl.ComponentInstaller.install(ComponentInstaller.java:143)
... 33 more
Caused by: javax.management.JMException
at
org.apache.servicemix.nmr.management.ManagementAgent.manageNamedObject(ManagementAgent.java:103)
at
org.apache.servicemix.nmr.management.ManagementAgent.manageObject(ManagementAgent.java:78)
... 41 more
Caused by: javax.management.JMException
at
org.apache.servicemix.nmr.management.ManagementAgent.register(ManagementAgent.java:248)
at
org.apache.servicemix.nmr.management.ManagementAgent.register(ManagementAgent.java:231)
at
org.apache.servicemix.nmr.management.ManagementAgent.manageNamedObject(ManagementAgent.java:101)
... 42 more
I took a look at the cxf-wsdl-first examples and compared the service
unit there to our service-units, but could not find a difference.
Are there any special issues which occur when service-units for the
servicemix service-engines are migrated from 4.0.0 to 4.1.0?
Thank you in advance for your help!
Kind regards,
Michael Handler
Am 31.03.2010 12:39, schrieb Michael Handler:
Hi!
I'm trying to deploy our project on ServiceMix 4.1.0-Snapshot (from
today- build 220).
It fails with the following stack trace:
[INFO] servicemix-http is not deployed
[INFO] Deploying jbi-component from
C:\Users\Michi\.m2\repository\org\apache\servicemix\servicemix-http\2010.01\servicemix-http-2010.01-installer.zip
...
org.apache.servicemix.jbi.deployer.impl.PendingException:
SharedLibrary not installed: servicemix-shared
at
org.apache.servicemix.jbi.deployer.impl.ComponentInstaller.init(ComponentInstaller.java:113)
at
org.apache.servicemix.jbi.deployer.impl.InstallationService.doLoadNewInstaller(InstallationService.java:219)
at
org.apache.servicemix.jbi.deployer.impl.InstallationService.install(InstallationService.java:165)
at
org.apache.servicemix.jbi.deployer.impl.AdminCommandsImpl.installComponent(AdminCommandsImpl.java:56)
Could anyone help me to resolve this issue? How do I install shared
libraries?
features:list gives me the following output:
ka...@root> features:list | grep servicemix-shared
[installed ] [2010.01 ] servicemix-shared
repo-0
kind regards,
Michael