Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1062155 - Missing javax.servlet.api dependency in org.jasig.cas.client module
Missing javax.servlet.api dependency in org.jasig.cas.client module
Status: VERIFIED
Product: JBoss Enterprise Portal Platform 6
Classification: JBoss
Component: Portal (Show other bugs)
6.1.0
All All
medium Severity medium
: ER02
: 6.2.0
Assigned To: mposolda
Tomas Kyjovsky
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2014-02-06 05:51 EST by Anurag
Modified: 2016-10-30 18:59 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Previously, when trying to use the cas-client-core-3.2.1.jar of /modules/system/layers/gatein/org/jasig/cas/client/main/ in an application by defining a dependency in the jboss-deployement-structure.xml file, a java.lang.ClassNotFoundException exception was thrown for the missing javax.servlet.http.HttpSessionListener dependency. This prevented the "org.jasig.cas.client" module from being used in a customer web application. The fix adds the missing dependency of Servlet API (javax.servlet.api module) to /modules/system/layers/gatein/org/jasig/cas/client/main/ which fixes the originally reported issue.
Story Points: ---
Clone Of:
Environment:
- JBoss Portal Platform - 6.1
Last Closed:
Type: Enhancement
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 GTNPORTAL-3462 Major Resolved Missing javax.servlet.api dependency in org.jasig.cas.client module 2016-04-04 14:34 EDT

  None (edit)
Description Anurag 2014-02-06 05:51:19 EST
Description of problem:

When trying to use the cas-client-core-3.2.1.jar of /modules/system/layers/gatein/org/jasig/cas/client/main/ in an application by defining dependency in the jboss-deployement-structure.xml file, a java.lang.ClassNotFoundException exception is thrown for the missing dependency of javax.servlet.http.HttpSessionListener in the cas-client-core-3.2.1.jar

Directly having the client jar in the application's /WEB-INF/lib/ works fine since the web-subsystem wraps the javax.sevlet.api.


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

- JBoss Portal Platform (6.1)
- cas-client-core-3.2.1.jar


Actual results:

========================================
10:48:12,740 WARN  [org.jboss.modules] (MSC service thread 1-8) Failed to define class org.jasig.cas.client.session.SingleSignOutHttpSessionListener in Module "org.jasig.cas.client:main" from local module loader @1e845c2 (finder: local module finder @3c0007 (roots: C:\Java\jboss-jpp-6.1.0\modules,C:\Java\jboss-jpp-6.1.0\modules\system\layers\gatein,C:\Java\jboss-jpp-6.1.0\modules\system\layers\base)): java.lang.LinkageError: Failed to link org/jasig/cas/client/session/SingleSignOutHttpSessionListener (Module "org.jasig.cas.client:main" from local module loader @1e845c2 (finder: local module finder @3c0007 (roots: C:\Java\jboss-jpp-6.1.0\modules,C:\Java\jboss-jpp-6.1.0\modules\system\layers\gatein,C:\Java\jboss-jpp-6.1.0\modules\system\layers\base)))
...
...
Caused by: java.lang.NoClassDefFoundError: javax/servlet/http/HttpSessionListener
	at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.6.0_45]
...
...
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpSessionListener from [Module "org.jasig.cas.client:main" from local module loader @1e845c2 (finder: local module finder @3c0007 (roots: C:\Java\jboss-jpp-6.1.0\modules,C:\Java\jboss-jpp-6.1.0\modules\system\layers\gatein,C:\Java\jboss-jpp-6.1.0\modules\system\layers\base))]
	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:196) [jboss-modules.jar:1.2.2.Final-redhat-1]
========================================

Expected results:

It should be possible to re-use the  /modules/system/layers/gatein/org/jasig/cas/client/main/cas-client-core-3.2.1.jar  from the application using the jboss-deployment-structure.xml


Additional info:

As a workaround one has to include javax.servlet.api as a dependency in the module.xml of  /modules/system/layers/gatein/org/jasig/cas/client/main

OR

Create a custom module for cas-client-core-3.2.1.jar and then include javax.servlet.api as a dependency in its module.xml.
Comment 3 László van den Hoek 2014-02-06 10:48:25 EST
It should be noted that using the newest cas-client-core (3.3.0) offers the added advantage of being able to use org.jasig.cas.client.jaas.Servlet3AuthenticationFilter (see https://issues.jasig.org/browse/CASC-174). This is necessary for authenticating with applications in a different security domain. In other words, reusing cas-client-core 3.2.1 doesn't make as much sense as would using 3.3.0 or higher.
Comment 5 Peter Palaga 2014-05-05 04:17:36 EDT
https://github.com/gatein/gatein-portal/pull/846 was merged in upstream.
Comment 6 Tomas Kyjovsky 2014-05-22 14:50:28 EDT
Reproduced with 6.1.0, fix verified with 6.2.0.ER2.

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