This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 963487 - Missing dependencies to Quartz and Common Pools
Missing dependencies to Quartz and Common Pools
Status: CLOSED INSUFFICIENT_DATA
Product: JBoss Enterprise WFK Platform 2
Classification: JBoss
Component: Spring (Show other bugs)
2.3.0
Unspecified Unspecified
unspecified Severity medium
: ---
: 2.4.0
Assigned To: Joshua Wilson
Tomas Repel
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-05-15 17:45 EDT by Jochen Cordes
Modified: 2013-07-31 09:55 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Known Issue
Doc Text:
Some Spring libraries have optional dependencies on other libraries that are not present in the org.springframework.spring JBoss module by default (e.g. the quartz library). As a consequence, applications that depend on Spring libraries installed as JBoss modules, cannot be deployed if the applications also require Spring optional dependencies. You can use one of the following workarounds for this issue: Do not depend on Spring libraries installed as JBoss modules; build the project with all the required jars. Add the optional dependencies into the org.springframework.spring module. Example of a module.xml file is as follows: <module xmlns="urn:jboss:module:1.1" name="org.springframework.spring"> <resources> <resource-root path="com.springsource.org.aopalliance-1.0.0.jar" /> ... <resource-root path="spring-expression-3.2.3.RELEASE.jar" /> <resource-root path="quartz-1.5.2.jar" /> <resource-root path="bsh-2.0b4.jar" /> </resources> <dependencies> <module name="org.apache.commons.logging"/> <module name="javaee.api"/> <module name="org.jboss.vfs"/> </dependencies> </module>
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-07-22 23:49:02 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
JBoss Issue Tracker WFK2-75 Major New Missing dependencies to Quartz and Common Pools 2014-07-30 10:48:06 EDT

  None (edit)
Description Jochen Cordes 2013-05-15 17:45:01 EDT
Description of problem:

The class org.springframework.scheduling.quartzCronTriggerBean in spring-context-support depends on Quartz and 
the class org.springframework.aop.target.CommonsPoolTargetSource in spring-aop has also a dependency org.apache.commons.pool.PoolableObjectFactory

These dependecies are also documented in Maven central.

Version-Release number of selected component (if applicable):

WFK 2.2 / Snowdrop 2.0.5

How reproducible:


Steps to Reproduce:
1. Install Snowdrop according to Spring Installation Guide (https://access.redhat.com/site/documentation/en-US/JBoss_Web_Framework_Kit/2.2/html-single/Spring_Installation_Guide/index.html)
2. Try to deploy a spring-context that contains CronTriggerBean

<bean id="cronTrigger"
		class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail" ref="runMeJob" />
		<property name="cronExpression" value="0/5 * * * * ?" /> 
</bean>

3.
  
Actual results:

ClassNotFound exceptions

Expected results:

No ClassNotFound exceptions

Additional info:
Comment 2 Marek Novotny 2013-06-03 10:39:12 EDT
I think that all transitive dependencies which Spring modules require in the case of installing Spring in EAP is a user responsibility. 

On the other hand if you bundle all spring jars and its dependencies in your application you will do it yourself anyway.


So your issue title "Missing dependencies to Quartz and Common Pools" is ambigous.

We need to put into Spring instalation guide reference a reference to Spring documentation where are described all implications when you use a Spring library otherwise we just point to Spring guide.
Comment 3 Marek Novotny 2013-06-03 10:42:58 EDT
I think that all transitive dependencies which Spring modules require in the case of installing Spring in EAP is a user responsibility. 

On the other hand if you bundle all spring jars and its dependencies in your application you will do it yourself anyway.


So your issue title "Missing dependencies to Quartz and Common Pools" is ambigous.

We need to put into Spring instalation guide reference a reference to Spring documentation where are described all implications when you use a Spring library otherwise we just point to Spring guide.
Comment 4 Jochen Cordes 2013-06-03 10:50:59 EDT
The bigger question is, what is covered by support?

There is a lot more stuff in spring-context (and spring-context-support) that we do not have in our products, like ehcache. These are mostly transitive dependencies.

AFAIK it is not possible to add transisitive dependencies for the module to the application as this will lead to class-loading issues and so needs to be added to the module.
Comment 5 Sneha 2013-07-04 07:29:55 EDT
Updated doc text.
Comment 6 Joshua Wilson 2013-07-22 23:49:02 EDT
Migrated to JIRA. https://issues.jboss.org/browse/WFK2-75

Note You need to log in before you can comment on or make changes to this bug.