[
https://issues.jboss.org/browse/AS7-2824?page=com.atlassian.jira.plugin.s...
]
Thomas Diesler resolved AS7-2824.
---------------------------------
Resolution: Done
Done
I'm closing this issue as the bundles directory can correctly be obtained from the
ServerEnvironment. The issue that ServerEnvironment.getModulesDir() may produce an invalid
File still remains
Bundles directory not resolved correctly with multi folder
module-path definition
---------------------------------------------------------------------------------
Key: AS7-2824
URL:
https://issues.jboss.org/browse/AS7-2824
Project: Application Server 7
Issue Type: Bug
Components: OSGi
Affects Versions: 7.0.2.Final
Reporter: Galder ZamarreƱo
Assignee: Thomas Diesler
Fix For: 7.1.0.Final
Right, so here's my first attempt at filling a bug for AS7 :)
I'm using the AS7 managed container with a custom modulePath, but arquillian tests
don't get deployed:
{code}
23:58:49,527 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) Starting
deployment of "arquillian-service"
23:58:49,761 INFO [org.jboss.as.jpa] (MSC service thread 1-5) added
javax.persistence.api dependency to arquillian-service
23:58:49,804 INFO [org.jboss.osgi.framework.internal.BundleManager] (MSC service thread
1-3) JBossOSGi Framework Core - 1.0.0.CR8
23:58:49,859 INFO [org.jboss.osgi.framework.internal.BundleManager] (MSC service thread
1-2) Install bundle: system.bundle:0.0.0
23:58:49,881 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC00001: Failed
to start service jbosgi.AutoInstallProvider:
org.jboss.msc.service.StartException in service jbosgi.AutoInstallProvider: Failed to
create auto install list
at
org.jboss.as.osgi.service.AutoInstallIntegration.start(AutoInstallIntegration.java:156)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[:1.6.0_26]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[:1.6.0_26]
at java.lang.Thread.run(Thread.java:680) [:1.6.0_26]
Caused by: java.lang.IllegalArgumentException: Cannot find bundles directory:
/Users/g/Go/code/scalabox.git/modules/lift/target/test-module:build/assembly/target/jboss-as-7.0.2.Final/bundles
at
org.jboss.as.osgi.service.AutoInstallIntegration.start(AutoInstallIntegration.java:123)
... 5 more
{code}
With a modulePath like:
{code}
<property name="modulePath">
${jboss.home:build/assembly/target/jboss-as-7.0.2.Final}/modules:modules/lift/target/test-module
</property>
{code}
The AS OSGI code does not seem to bother separating the module paths and assumes it needs
to go a directory under the last, which results in:
{code}
Caused by: java.lang.IllegalArgumentException: Cannot find bundles directory:
/Users/g/Go/code/scalabox.git/build/assembly/target/jboss-as-7.0.2.Final/modules:modules/lift/target/bundles
{code}
If I swap around the folder definition to be:
{code}
<property name="modulePath">
modules/lift/target/test-module:${jboss.home:build/assembly/target/jboss-as-7.0.2.Final}/modules
</property>
{code}
It doesn't work either:
{code}
Caused by: java.lang.IllegalArgumentException: Cannot find bundles directory:
/Users/g/Go/code/scalabox.git/modules/lift/target/test-module:build/assembly/target/jboss-as-7.0.2.Final/bundles
{code}
It'd appear that OSGI is resolving bundles to: ${modulePath}/../bundles
If it separated the module path before doing that, the bundles/ dir would be located
fine.
Alternatively, bundles should be resolved to: ${jbossHome}/bundles
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira