Return-Path:
javax.servlet.ServletException: java.lang.NoClassDefFoundError:
> org/apache/xpath/XPathContext
>
> org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:915)
>
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:844)
>
> org.apache.jsp.positiveForEachStepTest_jsp._jspService(positiveForEachStepTest_jsp.java:142)
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
>
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391)
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
>
root cause
java.lang.NoClassDefFoundError: > org/apache/xpath/XPathContext > > org.apache.taglibs.standard.tag.common.xml.XPathUtil.selectNodes(XPathUtil.java:519) > > org.apache.taglibs.standard.tag.common.xml.ForEachTag.prepare(ForEachTag.java:50) > > javax.servlet.jsp.jstl.core.LoopTagSupport.doStartTag(LoopTagSupport.java:231) > > org.apache.jsp.positiveForEachStepTest_jsp._jspService(positiveForEachStepTest_jsp.java:99) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:668) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) > javax.servlet.http.HttpServlet.service(HttpServlet.java:668) > > On Thu, Jun 30, 2011 at 12:43 AM, Jarek Gaworwrote: > >> I'm still not sure about this. Can you open a bug on this with the >> exact information why this is needed in the first place? What >> exceptions or problems did you see? Maybe that option needs to be JVM >> specific? >> >> Jarek >> >> On Wed, Jun 29, 2011 at 10:41 AM, viola lu wrote: >> > OK, i already update it to accurate package names. >> > >> > On Wed, Jun 29, 2011 at 8:28 PM, Ivan wrote: >> >> >> >> It looks to me that org.apache is a very common package name, once it >> is >> >> added in the bootdelegation list, each class belongs to this package >> (even >> >> class from Geronimo) will be delegated to framework classloader first, >> which >> >> is not a good idea in my opinion. If some packages are really required >> to >> >> load from there, the package names should be more accurate. >> >> >> >> 2011/6/29 >> >>> >> >>> Author: violalu >> >>> Date: Wed Jun 29 09:03:40 2011 >> >>> New Revision: 1141014 >> >>> >> >>> URL: http://svn.apache.org/viewvc?rev=1141014&view=rev >> >>> Log: >> >>> export org.apache.* in ibm jdk such as org.apache.xpath.* >> >>> >> >>> Modified: >> >>> >> >>> >> geronimo/server/trunk/framework/configs/karaf-framework/src/main/filtered-resources/etc/config.properties >> >>> >> >>> Modified: >> >>> >> geronimo/server/trunk/framework/configs/karaf-framework/src/main/filtered-resources/etc/config.properties >> >>> URL: >> >>> >> http://svn.apache.org/viewvc/geronimo/server/trunk/framework/configs/karaf-framework/src/main/filtered-resources/etc/config.properties?rev=1141014&r1=1141013&r2=1141014&view=diff >> >>> >> >>> >> ============================================================================== >> >>> --- >> >>> >> geronimo/server/trunk/framework/configs/karaf-framework/src/main/filtered-resources/etc/config.properties >> >>> (original) >> >>> +++ >> >>> >> geronimo/server/trunk/framework/configs/karaf-framework/src/main/filtered-resources/etc/config.properties >> >>> Wed Jun 29 09:03:40 2011 >> >>> @@ -55,7 +55,7 @@ org.osgi.framework.system.packages.extra >> >>> org.apache.geronimo.hook >> >>> >> >>> # javax.transaction is needed to avoid class loader constraint >> violation >> >>> when using javax.sql >> >>> >> >>> >> -org.osgi.framework.bootdelegation=sun.*,com.sun.*,javax.management.remote.rmi,javax.transaction,javax.transaction.*,com.ibm.*,org.apache.harmony.* >> >>> >> >>> >> +org.osgi.framework.bootdelegation=sun.*,com.sun.*,javax.management.remote.rmi,javax.transaction,javax.transaction.*,com.ibm.*,org.apache.harmony.*,org.apache.* >> >>> >> >>> # OSGi Execution Environment >> >>> >> >>> >> org.osgi.framework.executionenvironment=OSGi/Minimum-1.2,J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5,JavaSE-1.6 >> >>> >> >>> >> >> >> >> >> >> >> >> -- >> >> Ivan >> > >> > >> > >> > -- >> > viola >> > Apache Geronimo >> > >> > > > > -- > viola > > Apache Geronimo > > -- Ivan --20cf30291d0e16d57004a6e3c351 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable I checked the codes in=A0XPathUtil, it uses the class XPathContext class di= rectly, =A0so if we would ship that Apache JSTL library in Geronimo 3.0, we= need to add that dependency explicitly, not using bootdelegation here. Or = it will not work with Oracle JRE, which does not ship the required classes.= --20cf30291d0e16d57004a6e3c351--2011/6/30 viola lu <viola.lu@gmail.co= m>It's very specific test case. If we use Apache JSTL implementation(jstl= .jstl.1.2) not ri , and run jstl test cases on IBM JDK, it will report org.= apache.xpath.XpathContext ,and org.apache.xml.utils.Qname class not found a= lthough i already add ibm jdk xml.jar on test case classpath.=A0Appreciate if you can provide an option from JVM side.Error t= race.<pre>javax.servlet.ServletException: java.lang.N= oClassDefFoundError: org/apache/xpath/XPathContextorg.apache.jasper.runtime.PageContextImpl.do= HandlePageException(PageContextImpl.java:915)org.apache.jasper.runtime= .PageContextImpl.handlePageException(PageContextImpl.java:844)org.apache.jsp.positiveForEachSt= epTest_jsp._jspService(positiveForEachStepTest_jsp.java:142)org.apache.jasper.runtime= .HttpJspBase.service(HttpJspBase.java:70)javax.servlet.http.HttpServlet.service(HttpServlet.ja= va:668)org.apache.jasper.servlet= .JspServletWrapper.service(JspServletWrapper.java:417)org.apache.jasper.servlet.JspServlet.ser= viceJspFile(JspServlet.java:391)org.apache.jasper.servlet= .JspServlet.service(JspServlet.java:334)javax.servlet.http.HttpServlet.service(HttpServlet.jav= a:668)</pre></p><p><b>root cause</b> <pre&g= t;java.lang.NoClassDefFoundError: org/apache/xpath/XPathContext<= span style=3D"white-space:pre-wrap"> org.apache.taglibs.standard.tag= .common.xml.XPathUtil.selectNodes(XPathUtil.java:519)org.apache.taglibs.standa= rd.tag.common.xml.ForEachTag.prepare(ForEachTag.java:50)javax.servlet.jsp.jstl.core.LoopTagSup= port.doStartTag(LoopTagSupport.java:231)org.apache.jsp.positiveFo= rEachStepTest_jsp._jspService(positiveForEachStepTest_jsp.java:99)org.apache.jasper.runtime.Ht= tpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpSe= rvlet.service(HttpServlet.java:668)org.apache.jasper.servlet.JspServletWrapper.service(JspServ= letWrapper.java:417)org.apache.jasper.servlet= .JspServlet.serviceJspFile(JspServlet.java:391)org.apache.jasper.servlet.JspServlet.service(Js= pServlet.java:334)javax.servlet.http.HttpSe= rvlet.service(HttpServlet.java:668)--On Thu, Jun 30, 2011 at 12:4= 3 AM, Jarek Gawor <jgawor@gmail.com> wrote:
I'm still not sure about this. Can you open a bug on this with the
exact information why this is needed in the first place? What
exceptions or problems did you see? Maybe that option needs to be JVM
specific?
Jarek
On Wed, Jun 29, 2011 at 10:41 AM, viola lu <viola.lu@gmail.com> wrote:
> OK, i already update it to accurate package names.
>
> On Wed, Jun 29, 2011 at 8:28 PM, Ivan <xhhsld@gmail.com> wrote:
>>
>> It looks to me that org.apache is a very common package name, =A0o= nce it is
>> added in the bootdelegation list, each class belongs to this packa= ge (even
>> class from Geronimo) will be delegated to framework classloader fi= rst, which
>> is not a good idea in my opinion. If some packages are really requ= ired to
>> load from there, the package names should be more=A0accurate.
>>
>> 2011/6/29 <violalu@apache.org>
>>>
>>> Author: violalu
>>> Date: Wed Jun 29 09:03:40 2011
>>> New Revision: 1141014
>>>
>>> URL: http://svn.apache.org/viewvc?rev=3D1141014&a= mp;view=3Drev
>>> Log:
>>> export org.apache.* in ibm jdk such as org.apache.xpath.*
>>>
>>> Modified:
>>>
>>> =A0geronimo/server/trunk/framework/configs/karaf-framework/src= /main/filtered-resources/etc/config.properties
>>>
>>> Modified:
>>> geronimo/server/trunk/framework/configs/karaf-framework/src/ma= in/filtered-resources/etc/config.properties
>>> URL:
>>> http://svn.apache.org/viewvc/geronimo/server/trunk/framewo= rk/configs/karaf-framework/src/main/filtered-resources/etc/config.propertie= s?rev=3D1141014&r1=3D1141013&r2=3D1141014&view=3Ddiff
>>>
>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D
>>> ---
>>> geronimo/server/trunk/framework/configs/karaf-framework/src/ma= in/filtered-resources/etc/config.properties
>>> (original)
>>> +++
>>> geronimo/server/trunk/framework/configs/karaf-framework/src/ma= in/filtered-resources/etc/config.properties
>>> Wed Jun 29 09:03:40 2011
>>> @@ -55,7 +55,7 @@ org.osgi.framework.system.packages.extra
>>> =A0org.apache.geronimo.hook
>>>
>>> =A0# javax.transaction is needed to avoid class loader constra= int violation
>>> when using javax.sql
>>>
>>> -org.osgi.framework.bootdelegation=3Dsun.*,com.sun.*,javax.man= agement.remote.rmi,javax.transaction,javax.transaction.*,com.ibm.*,org.apac= he.harmony.*
>>>
>>> +org.osgi.framework.bootdelegation=3Dsun.*,com.sun.*,javax.man= agement.remote.rmi,javax.transaction,javax.transaction.*,com.ibm.*,org.apac= he.harmony.*,org.apache.*
>>>
>>> =A0# OSGi Execution Environment
>>>
>>> =A0org.osgi.framework.executionenvironment=3DOSGi/Minimum-1.2,= J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5,JavaSE-1.6
>>>
>>>
>>
>>
>>
>> --
>> Ivan
>
>
>
> --
> viola
> Apache Geronimo
>
violaApache Geronimo
--
Ivan