struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Obinna <obi...@gmail.com>
Subject Re: embeddedJsp plugin causing jsp compilation issues
Date Tue, 20 Oct 2009 14:01:28 GMT
Ok, So I've been able to inspect the classloaders and I think I see what's
going wrong (though I'm not sure how best to fix it).

Given my two webapps, AppA and AppB running simulatenously in tomcat. I do
the following:

 1. Load AppA
     a. Load normal jsp page (breakpoint not caught -> still using tomcat
default JspFactory)
     b. Load an embeddedJSP page
          i.  Breakpoint caught at static initializer in JSPRuntimeContext
(line 96)   {calling JspFactory.setDefaultFactory(factory); to initialize
JspFactory implementation}
               - JSPFactory classloader is StandardClassLoader (good)
               - JspFactoryImpl classloader is AppA WebAppClassloader (good)
          ii. Breakpoint caught at JSPApplicationContextImpl (line 79)
{calling impl = new JspApplicationContextImpl() to initialize new servlet
context}
              - JspFactoryImpl classloader is AppA WebAppClassloader (good)
              - JSPApplicationContextImpl classloader is AppA
WebAppClassloader (good)

2. Load AppB
     a. Load normal jsp page
             i. Breakpoint caught at JSPApplicationContextImpl (line 79)
{calling impl = new JspApplicationContextImpl() to initialize new servlet
context}. This means that is is still using the JspFactoryImpl set in step
1.b.i above
              - JspFactoryImpl classloader is AppA WebAppClassloader
(bad!!!  using class loaded in AppA classloader)   !!!!!
              - JSPApplicationContextImpl classloader is AppA
WebAppClassloader (bad!!!  using class loaded in AppA classloader)   !!!!!
     b. Load embedded jsp page
             JSPApplicationContextImpl (line 76) tries to call {
JspApplicationContextImpl impl = (JspApplicationContextImpl)
context.getAttribute(KEY); }   and throws ClassCastException because impl
class returned by context.getAttribute(KEY) was loaded by
AppAWebAppClassLoader but current class (JspApplicationContextImpl) class
loader is now AppB WebAppClassLoader.

It is as I suspected in my last email. I don't think that the JspFactoryImpl
class set by JspFactory.setDefaultFactory(factory) when AppA was loaded
should be the one used by AppB. Somehow the JspFactoryImpl used should
probably be isolated by web application and if possible should only be used
by the embeddedJSP compiler (not used globally for normal jsps as well)

 - Eric



On Tue, Oct 20, 2009 at 2:41 PM, Martin Gainty <mgainty@hotmail.com> wrote:

>
> Eric-
> are you able to determine which classloader JspApplicationContext is using
> to load JspApplicationContextImpl class?
>         System.out.println("The class of " + JspApplicationContextImpl +
>                            " is " +
> JspApplicationContextImpl.getClass().getName());
>         System.out.println("The classLoader of " +
> JspApplicationContextImpl +
>                            " is " +
> JspApplicationContextImpl.getClass().getClassloader());
>
> were you able to verify the Jsp configuration entries in
> $CATALINA_HOME/conf
>     <servlet>
>        <servlet-name>jsp</servlet-name>
>         <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
>        <load-on-startup>3</load-on-startup>
>    </servlet>
> what is meant by term 'embedded' ..can i assume you are implementing APR
> (apache portable runtime)?
>
> thanks for taking the time to look at this,
> Martin Gainty
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte
> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht
> dient lediglich dem Austausch von Informationen und entfaltet keine
> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le
> destinataire prévu, nous te demandons avec bonté que pour satisfaire
> informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie
> de ceci est interdite. Ce message sert à l'information seulement et n'aura
> pas n'importe quel effet légalement obligatoire. Étant donné que les email
> peuvent facilement être sujets à la manipulation, nous ne pouvons accepter
> aucune responsabilité pour le contenu fourni.
>
>
>
>
> > Date: Tue, 20 Oct 2009 14:14:55 +0300
> > Subject: Re: embeddedJsp plugin causing jsp compilation issues
> > From: obinna@gmail.com
> > To: dev@struts.apache.org
> >
> > An update...
> >
> > I've tried setting a breakpoint in the
> > JspApplicationContextImpl.getInstance() method and the
> > JspFactoryImpl().getJspApplicationContext() methods but for some reason
> > cannot inspect the variable at that point to figure out which classloader
> > are being called when.
> >
> > What is clear is that once an embeddedJsp is loaded, the default
> JspFactory
> > for ALL jsp pages (even non-embedded ones) becomes the
> > org.apache.struts2.jasper.runtime.JspFactoryImpl (even for a separate
> > web-app!) because loading subsequent non-embedded pages for the first
> time
> > (in either web-app) still hits and break in the
> > JspApplicationContextImpl.getInstance() method. It seems like using the
> > embeddedJsp calls JspFactory().setDefaultFactory() or something and that
> > this has a system-wide scope.
> >
> > I don't suppose that this would be a problem if it wasn't for some
> > classloader mix-up which means that when I then try to access an
> embeddedJsp
> > page in the second web-app, in the
> JspApplicationContextImpl.getInstance()
> > method it finds the JspApplicationContextImpl instance that was set
> during
> > the loading of some initial pages (such as login page) in this second app
> > but it seems that that must have been set by a different classloader
> because
> > the class cast fails when it tries to cast that instance (on the line
> > JspApplicationContextImpl impl = (JspApplicationContextImpl)
> > context.getAttribute(KEY)).
> >
> > I will continue to try to figure out how to inspect the variables (and
> see
> > the classloaders) in my IDE...
> >
> > - Eric
> >
> >
> >
> > On Sat, Oct 17, 2009 at 9:12 PM, Musachy Barroso <musachy@gmail.com>
> wrote:
> >
> > > nothing so obvious, JspApplicationContextImpl is obviously getting
> > > loaded by different classloaders, but I am out of ideas, I think you
> > > can set a break point for classloading right? Try to do that and see
> > > if you get any insight.
> > >
> > > musachy
> > >
> > > On Sat, Oct 17, 2009 at 2:57 AM, Obinna <obinna@gmail.com> wrote:
> > > > I have a ton of jars in my lib (but no el-api). The lib for that
> projects
> > > > looks as follows (both projects have similar libs):
> > > >
> > > > asterisk-java-1.0.jar
> > > > cglib-nodep-2.1_3.jar
> > > > chartengineapi.jar
> > > > com.ibm.icu_4.0.1.v20090415.jar
> > > > commons-beanutils-1.7.0.jar
> > > > commons-cli-1.0.jar
> > > > commons-codec-1.3.jar
> > > > commons-collections-3.2.1.jar
> > > > commons-dbcp.jar
> > > > commons-digester-1.8.jar
> > > > commons-fileupload-1.2.1.jar
> > > > commons-httpclient-3.1.jar
> > > > commons-io-1.1.jar
> > > > commons-lang-2.4.0.jar
> > > > commons-logging.jar
> > > > commons-pool.jar
> > > > coreapi.jar
> > > > crosstabcoreapi.jar
> > > > dataadapterapi.jar
> > > > dataaggregationapi.jar
> > > > dataextraction.jar
> > > > displaytag-1.2.jar
> > > > displaytag-export-poi-1.2.jar
> > > > dteapi.jar
> > > > ecxconnect-mmp-bl.jar
> > > > emitterconfig.jar
> > > > engineapi.jar
> > > > flute.jar
> > > > *freemarker-2.3.15.jar*
> > > > gnu-hylafax-core-1.0.3.jar
> > > > gnu-hylafax-inet-ftp-1.0.3.jar
> > > > itext-1.3.jar
> > > > jasypt-1.4.1.x.jar
> > > > jaxws-spring-1.8.jar
> > > > jep-3.3.0-trial.jar
> > > > joda-time-1.6.jar
> > > > js.jar
> > > > json.jar
> > > > jsonplugin-0.33.jar
> > > > jstl.jar
> > > > junit-4.4.jar
> > > > log4j-1.2.8.jar
> > > > mail-1.4.2.jar
> > > > mmpdemo-bl.jar
> > > > modelapi.jar
> > > > modelodaapi.jar
> > > > mysql-connector-java-5.0.5-bin.jar
> > > > odadesignapi.jar
> > > > *ognl-2.7.3.jar*
> > > > org.apache.commons.codec_1.3.0.v20080530-1600.jar
> > > > org.eclipse.birt.report.model_2.5.0.v20090605.jar
> > > > org.eclipse.emf.common_2.5.0.v200906080927.jar
> > > > org.eclipse.emf.ecore_2.5.0.v200906080927.jar
> > > > org.eclipse.emf.ecore.xmi_2.5.0.v200906080927.jar
> > > > org.w3c.css.sac_1.3.0.v200805290154.jar
> > > > poi-3.0.2-FINAL-20080204.jar
> > > > scriptapi.jar
> > > > spring-2.5.6.jar
> > > > spring-security-core-2.0.4.jar
> > > > spring-security-taglibs-2.0.4.jar
> > > > spring-test-2.5.6.jar
> > > > spring-webmvc-2.5.6.jar
> > > > spring-ws-1.5.2.jar
> > > > standard.jar
> > > > *struts2-core-2.1.8.jar*
> > > > *struts2-embeddedjsp-plugin-2.1.9-SNAPSHOT.jar
> > > > *struts2-jquery-plugin-1.0.8.jar
> > > > struts2-scope-plugin-1.0.4 (modified).jar
> > > > *struts2-spring-plugin-2.1.8.jar*
> > > > tidy.jar
> > > > trilead-ssh2-build213.jar
> > > > webservices-api.jar
> > > > webservices-rt.jar
> > > > xbean-spring-3.1.jar
> > > > *xwork-core-2.1.6.jar*
> > > >
> > > > I haven't tried testing this on another 'trimmed down' project. Let
> me
> > > know
> > > > if anything is glaringly obvious here, otherwise, I'll try the
> > > trimming-down
> > > >
> > > >  Thanks for looking through this!
> > > > - Eric
> > > >
> > > >
> > > > On Sat, Oct 17, 2009 at 2:52 AM, Musachy Barroso <musachy@gmail.com>
> > > wrote:
> > > >
> > > >> nvm. el-api.jar should not be in lib, after removing them I have to
> > > >> webapps with jsp plugin working. Can you compare your jars to:
> > > >>
> > > >>  commons-el-1.0.jar
> > > >>  commons-fileupload-1.2.1.jar
> > > >>  commons-io-1.3.2.jar
> > > >>  commons-logging-1.1.1.jar
> > > >>  freemarker-2.3.15.jar
> > > >>  ognl-2.7.3.jar
> > > >>  struts2-core-2.1.9-SNAPSHOT.jar
> > > >>  struts2-embeddedjsp-plugin-2.1.9-SNAPSHOT.jar
> > > >>  xwork-core-2.1.7-SNAPSHOT.jar
> > > >>
> > > >> and tell me the exact steps after you load the app, to reproduce the
> > > error?
> > > >>
> > > >> thanks for helping me test this btw :)
> > > >> musachy
> > > >>
> > > >> On Fri, Oct 16, 2009 at 4:49 PM, Musachy Barroso <musachy@gmail.com
> >
> > > >> wrote:
> > > >> > I am getting a different error:
> > > >> >
> > > >> > javax.servlet.ServletException: java.lang.LinkageError: Class
> > > >> > javax/el/ExpressionFactory violates loader constraints
> > > >> >
> > >  org.apache.jasper.servlet.JspServlet.service(JspServlet.java:275)
> > > >> >
>  javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> > > >> >
> > > >>
> > >
>  org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154)
> > > >> >
> > > >>
> > >
>  org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
> > > >> >
> > > >>
> > >
>  com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:362)
> > > >> >
> > > >>
> > >
>  com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:266)
> > > >> >
> > > >>
> > >
>  com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
> > > >> >
> > > >> > which looks even more weird. Here are the jars I have in
> web-inf/lib:
> > > >> >
> > > >> > commons-el-1.0.jar
> > > >> > commons-fileupload-1.2.1.jar
> > > >> > commons-io-1.3.2.jar
> > > >> > commons-logging-1.1.1.jar
> > > >> > el-api-6.0.18.jar
> > > >> > freemarker-2.3.15.jar
> > > >> > ognl-2.7.3.jar
> > > >> > struts2-core-2.1.9-SNAPSHOT.jar
> > > >> > struts2-embeddedjsp-plugin-2.1.9-SNAPSHOT.jar
> > > >> > testjar-1.0.jar
> > > >> > xwork-core-2.1.7-SNAPSHOT.jar
> > > >> >
> > > >> > That's on a default installation of tomcat 6.0.20. Can you compare
> > > >> > that to your jars?
> > > >> >
> > > >> > musachy
> > > >> >
> > > >> > On Thu, Oct 15, 2009 at 8:57 AM, Musachy Barroso <
> musachy@gmail.com>
> > > >> wrote:
> > > >> >> pretty consistent :), I will try to take a look.
> > > >> >>
> > > >> >> musachy
> > > >> >>
> > > >> >> On Thu, Oct 15, 2009 at 8:23 AM, Obinna <obinna@gmail.com>
> wrote:
> > > >> >>> No I don't have any unusual jars in my shared lib (learnt
my
> lesson
> > > >> last
> > > >> >>> time :| - I have some jax-ws web-service api stuff in
endorsed
> but
> > > >> that's
> > > >> >>> all).
> > > >> >>>
> > > >> >>> Placing the plugin jar in the shared dir ('lib' for Tomcat
6)
> > > results
> > > >> in
> > > >> >>> struts not being able to find the plugin config file
and
> throwing
> > > the
> > > >> error:
> > > >> >>> "There is no result type defined for type 'embeddedJsp'..."
> > > >> >>>
> > > >> >>> Given this, it is somewhat strange that, placing it in
the
> web-app
> > > libs
> > > >> *as
> > > >> >>> well as *the tomcat lib results in struts trying to load
the
> trying
> > > to
> > > >> load
> > > >> >>> the plugin config file twice and throwing the error during
> startup:
> > > >> >>>
> > > >> >>> The package name 'embeddedjsp-default' at location package
-
> > > >> >>>
> > > >>
> > >
> jar:file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/wtpwebapps/test/WEB-INF/lib/struts2-embeddedjsp-plugin-2.1.9-SNAPSHOT.jar!/struts-plugin.xml:29:82
> > > >> >>> is already been used by another package at location package
-
> > > >> >>>
> > > >>
> > >
> jar:file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/lib/struts2-embeddedjsp-plugin-2.1.9-SNAPSHOT.jar!/struts-plugin.xml:29:82
> > > >> >>> ....
> > > >> >>>
> > > >> >>> Thanks,
> > > >> >>>  - Eric
> > > >> >>>
> > > >> >>>
> > > >> >>>
> > > >> >>>
> > > >> >>> On Thu, Oct 15, 2009 at 5:59 PM, Musachy Barroso <
> musachy@gmail.com
> > > >
> > > >> wrote:
> > > >> >>>
> > > >> >>>> just for kicks, put the embeddedjsp plugin in the
shared dir,
> and
> > > see
> > > >> >>>> if it works.
> > > >> >>>>
> > > >> >>>> On Thu, Oct 15, 2009 at 7:58 AM, Musachy Barroso
<
> > > musachy@gmail.com>
> > > >> >>>> wrote:
> > > >> >>>> > yeah that is kind of strange. do you have any
of the struts,
> or
> > > your
> > > >> >>>> > jars in the tomcat shared dir? even in that
case it should
> not
> > > >> matter.
> > > >> >>>> >
> > > >> >>>> > musachy
> > > >> >>>> >
> > > >> >>>> > On Thu, Oct 15, 2009 at 1:10 AM, Obinna <obinna@gmail.com>
> > > wrote:
> > > >> >>>> >> There's another classloading issue with
the embeddedJsp
> plugin.
> > > >> >>>> >>
> > > >> >>>> >> When deploying multiple webapps on the same
tomcat server,
> both
> > > of
> > > >> which
> > > >> >>>> >> utilize the embeddedJsp plugin. After loading
embeddJsp
> pages in
> > > on
> > > >> web
> > > >> >>>> app,
> > > >> >>>> >> attempting to load any embeddedJsp pages
in the second
> webapp
> > > >> throws the
> > > >> >>>> >> following exception:
> > > >> >>>> >>
> > > >> >>>> >> java.lang.ClassCastException:
> > > >> >>>> >> org.apache.struts2.jasper.runtime.JspApplicationContextImpl
> > > cannot
> > > >> be
> > > >> >>>> cast
> > > >> >>>> >> to
> org.apache.struts2.jasper.runtime.JspApplicationContextImpl
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.jasper.runtime.JspApplicationContextImpl.getInstance(JspApplicationContextImpl.java:76)
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.jasper.runtime.JspFactoryImpl.getJspApplicationContext(JspFactoryImpl.java:200)
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.jsp.com.test.service.reporting.jsp.alert_jsp._jspInit(alert_jsp.java
> > > >> >>>> >> from :31)
> > > >> >>>> >>
> > > >> >>>>
> > > >>
>  org.apache.struts2.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
> > > >> >>>> >>
> > >  org.apache.struts2.JSPLoader.createServlet(JSPLoader.java:112)
> > > >> >>>> >>    org.apache.struts2.JSPLoader.load(JSPLoader.java:90)
> > > >> >>>> >>
>  org.apache.struts2.ServletCache$1.call(ServletCache.java:46)
> > > >> >>>> >>
>  org.apache.struts2.ServletCache$1.call(ServletCache.java:44)
> > > >> >>>> >>
> > > >>  java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> > > >> >>>> >>    java.util.concurrent.FutureTask.run(FutureTask.java:138)
> > > >> >>>> >>    org.apache.struts2.ServletCache.get(ServletCache.java:53)
> > > >> >>>> >>    org.apache.struts2.JSPRuntime.handle(JSPRuntime.java:63)
> > > >> >>>> >>    org.apache.struts2.JSPRuntime.handle(JSPRuntime.java:45)
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.EmbeddedJSPResult.doExecute(EmbeddedJSPResult.java:32)
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186).
> > > >> >>>> >>
> > > >> >>>> >> which is strange as i would have expected
the
> > > >> JspApplicationContextImpl
> > > >> >>>> to
> > > >> >>>> >> be loaded and isolated by each web-application
class loader.
> > > >> >>>> >>
> > > >> >>>> >> Also, subsequent attempts to load non-embedded
jsp page then
> > > throw:
> > > >> >>>> >>
> > > >> >>>> >> org.apache.struts2.jasper.runtime.JspApplicationContextImpl
> > > cannot
> > > >> be
> > > >> >>>> cast
> > > >> >>>> >> to
> org.apache.struts2.jasper.runtime.JspApplicationContextImpl
> > > >> >>>> >> at
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.jasper.runtime.JspApplicationContextImpl.getInstance(JspApplicationContextImpl.java:76)
> > > >> >>>> >>    at
> > > >> >>>> >>
> > > >> >>>>
> > > >>
> > >
> org.apache.struts2.jasper.runtime.JspFactoryImpl.getJspApplicationContext(JspFactoryImpl.java:200)
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>> >> - Eric
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>> >>
> > > >> >>>> >> On Mon, Sep 28, 2009 at 11:05 AM, Obinna
<obinna@gmail.com>
> > > wrote:
> > > >> >>>> >>
> > > >> >>>> >>> Tested and work well. Couldn't resolve
> > > struts2-core.2.1.9-Snapshot
> > > >> >>>> maven
> > > >> >>>> >>> dependency so I used 2.1.8 though.
> > > >> >>>> >>> Closed jira ticket.
> > > >> >>>> >>> Thanks again!!  I hope everyone realizes
how
> > > significant/powerful
> > > >> a
> > > >> >>>> plugin
> > > >> >>>> >>> this is.
> > > >> >>>> >>>
> > > >> >>>> >>> - Eric
> > > >> >>>> >>>
> > > >> >>>> >>>
> > > >> >>>> >>>
> > > >> >>>> >>> On Mon, Sep 28, 2009 at 9:07 AM, Musachy
Barroso <
> > > >> musachy@gmail.com
> > > >> >>>> >wrote:
> > > >> >>>> >>>
> > > >> >>>> >>>> I should have done it with jasper
6 since the beginning,
> but
> > > it
> > > >> seemed
> > > >> >>>> >>>> more difficult and my laziness took
the best of me :)
> > > >> >>>> >>>>
> > > >> >>>> >>>> musachy
> > > >> >>>> >>>>
> > > >> >>>> >>>> On Sun, Sep 27, 2009 at 10:12 PM,
Obinna <
> obinna@gmail.com>
> > > >> wrote:
> > > >> >>>> >>>> > Great!. Musachy, thanks a million
for doing this so
> quickly.
> > > >> I'll
> > > >> >>>> give
> > > >> >>>> >>>> it a
> > > >> >>>> >>>> > test anon
> > > >> >>>> >>>> >
> > > >> >>>> >>>> >
> > > >> >>>> >>>> > On Mon, Sep 28, 2009 at 6:18
AM, Martin Gainty <
> > > >> mgainty@hotmail.com
> > > >> >>>> >
> > > >> >>>> >>>> wrote:
> > > >> >>>> >>>> >
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >> thanks for the headsup..
2.1.8 builds now..
> > > >> >>>> >>>> >> I had wrong version of
commons-collections ListUtils
> not
> > > >> having
> > > >> >>>> >>>> >> isEqualList(collection,collection)
> > > >> >>>> >>>> >>        <dependency>
> > > >> >>>> >>>> >>
> > > >>  <groupId>org.apache.commons.collections</groupId>
> > > >> >>>> >>>> >>
>  <artifactId>commons-collections</artifactId>
> > > >> >>>> >>>> >>                <version>3.2.1</version>
> > > >> >>>> >>>> >>        </dependency>
> > > >> >>>> >>>> >> pulls correct version
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >> seeing some failures in
surefire..(too many to count on
> one
> > > >> hand
> > > >> >>>> will
> > > >> >>>> >>>> take
> > > >> >>>> >>>> >> a look tommorrow)
> > > >> >>>> >>>> >> thanks,
> > > >> >>>> >>>> >> Martin Gainty
> > > >> >>>> >>>> >> ______________________________________________
> > > >> >>>> >>>> >> Standard Caveats apply
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >> > Date: Sun, 27 Sep
2009 19:00:12 -0700
> > > >> >>>> >>>> >> > Subject: Re: embeddedJsp
plugin causing jsp
> compilation
> > > >> issues
> > > >> >>>> >>>> >> > From: musachy@gmail.com
> > > >> >>>> >>>> >> > To: dev@struts.apache.org
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > a'right. The code
is in trunk. To use the plugin with
> > > >> tomcat,
> > > >> >>>> just
> > > >> >>>> >>>> >> > build it and deploy
it as usual. It works with Jetty
> 7+,
> > > >> which
> > > >> >>>> needs
> > > >> >>>> >>>> >> > the tomcat deps added
to the application, adding this
> to
> > > >> your pom
> > > >> >>>> >>>> will
> > > >> >>>> >>>> >> > take care of it:
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > <dependency>
> > > >> >>>> >>>> >> >        <groupId>org.apache.tomcat</groupId>
> > > >> >>>> >>>> >> >        <artifactId>jasper</artifactId>
> > > >> >>>> >>>> >> >        <version>6.0.18</version>
> > > >> >>>> >>>> >> > </dependency>
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > let me know if it
works.
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > musachy
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > On Sun, Sep 27, 2009
at 6:34 PM, Musachy Barroso <
> > > >> >>>> musachy@gmail.com>
> > > >> >>>> >>>> >> wrote:
> > > >> >>>> >>>> >> > > it works on tomcat
but now it breaks in jetty...oh
> joy.
> > > >> >>>> >>>> >> > >
> > > >> >>>> >>>> >> > > On Sun, Sep 27,
2009 at 2:35 PM, Musachy Barroso <
> > > >> >>>> >>>> musachy@gmail.com>
> > > >> >>>> >>>> >> wrote:
> > > >> >>>> >>>> >> > >> ok I got
jasper 6 working. I will do some more
> testing
> > > >> (at
> > > >> >>>> least
> > > >> >>>> >>>> the
> > > >> >>>> >>>> >> > >> junits run
fine), commit the jasper code, and then
> > > commit
> > > >> my
> > > >> >>>> >>>> changes.
> > > >> >>>> >>>> >> > >> (later on)
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >> musachy
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >> On Sun, Sep
27, 2009 at 12:56 PM, Musachy Barroso
> <
> > > >> >>>> >>>> musachy@gmail.com>
> > > >> >>>> >>>> >> wrote:
> > > >> >>>> >>>> >> > >>> yeah
that would work if I could use it as a
> library,
> > > but
> > > >> >>>> jasper
> > > >> >>>> >>>> is
> > > >> >>>> >>>> >> not
> > > >> >>>> >>>> >> > >>> written
with that in mind. I had to change a
> fairly
> > > >> amount of
> > > >> >>>> >>>> private
> > > >> >>>> >>>> >> > >>> code
to get it to work.
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>> musachy
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>> On Sun,
Sep 27, 2009 at 12:50 PM, Antonio
> Petrelli
> > > >> >>>> >>>> >> > >>> <antonio.petrelli@gmail.com>
wrote:
> > > >> >>>> >>>> >> > >>>> 2009/9/27
Musachy Barroso <musachy@gmail.com>:
> > > >> >>>> >>>> >> > >>>>>
It is a missmatch between the jsp-apis. The
> > > internal
> > > >> jasper
> > > >> >>>> >>>> >> implements
> > > >> >>>> >>>> >> > >>>>>
2.0, while tomcat 6/jasper 6 implement 2.1, and
> in
> > > 2.1
> > > >> >>>> there a
> > > >> >>>> >>>> new
> > > >> >>>> >>>> >> > >>>>>
method called. It is not looking good.
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >> > >>>> You
might wish to use JarJar to repackage, to
> avoid
> > > >> >>>> conflicts
> > > >> >>>> >>>> like
> > > >> >>>> >>>> >> > >>>> this.
Lots of people use them to avoid
> dependencies,
> > > >> like
> > > >> >>>> >>>> >> > >>>> commons-logging.
> > > >> >>>> >>>> >> > >>>> See:
> > > >> >>>> >>>> >> > >>>> http://docs.atlassian.com/jarjar-maven-plugin/
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >> > >>>> HTH
> > > >> >>>> >>>> >> > >>>> Antonio
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >>
> > > >> >>>>
> > > ---------------------------------------------------------------------
> > > >> >>>> >>>> >> > >>>> To
unsubscribe, e-mail:
> > > >> dev-unsubscribe@struts.apache.org
> > > >> >>>> >>>> >> > >>>> For
additional commands, e-mail:
> > > >> dev-help@struts.apache.org
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >> > >>>>
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>> --
> > > >> >>>> >>>> >> > >>> "Hey
you! Would you help me to carry the stone?"
> Pink
> > > >> Floyd
> > > >> >>>> >>>> >> > >>>
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >> --
> > > >> >>>> >>>> >> > >> "Hey you!
Would you help me to carry the stone?"
> Pink
> > > >> Floyd
> > > >> >>>> >>>> >> > >>
> > > >> >>>> >>>> >> > >
> > > >> >>>> >>>> >> > >
> > > >> >>>> >>>> >> > >
> > > >> >>>> >>>> >> > > --
> > > >> >>>> >>>> >> > > "Hey you! Would
you help me to carry the stone?"
> Pink
> > > >> Floyd
> > > >> >>>> >>>> >> > >
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> > --
> > > >> >>>> >>>> >> > "Hey you! Would you
help me to carry the stone?" Pink
> > > Floyd
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >> >
> > > >> >>>>
> > > ---------------------------------------------------------------------
> > > >> >>>> >>>> >> > To unsubscribe, e-mail:
> > > dev-unsubscribe@struts.apache.org
> > > >> >>>> >>>> >> > For additional commands,
e-mail:
> > > dev-help@struts.apache.org
> > > >> >>>> >>>> >> >
> > > >> >>>> >>>> >>
> > > >> >>>> >>>> >>
> > > >> _________________________________________________________________
> > > >> >>>> >>>> >> Lauren found her dream
laptop. Find the PC that’s right
> for
> > > >> you.
> > > >> >>>> >>>> >>
> > > >> http://www.microsoft.com/windows/choosepc/?ocid=ftp_val_wl_290
> > > >> >>>> >>>> >
> > > >> >>>> >>>>
> > > >> >>>> >>>>
> > > >> >>>> >>>>
> > > >> >>>> >>>> --
> > > >> >>>> >>>> "Hey you! Would you help me to carry
the stone?" Pink
> Floyd
> > > >> >>>> >>>>
> > > >> >>>> >>>>
> > > >>
> ---------------------------------------------------------------------
> > > >> >>>> >>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > > >> >>>> >>>> For additional commands, e-mail:
> dev-help@struts.apache.org
> > > >> >>>> >>>>
> > > >> >>>> >>>>
> > > >> >>>> >>>
> > > >> >>>> >>
> > > >> >>>> >
> > > >> >>>> >
> > > >> >>>> >
> > > >> >>>> > --
> > > >> >>>> > "Hey you! Would you help me to carry the stone?"
Pink Floyd
> > > >> >>>> >
> > > >> >>>>
> > > >> >>>>
> > > >> >>>>
> > > >> >>>> --
> > > >> >>>> "Hey you! Would you help me to carry the stone?"
Pink Floyd
> > > >> >>>>
> > > >> >>>>
> > > ---------------------------------------------------------------------
> > > >> >>>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > > >> >>>> For additional commands, e-mail: dev-help@struts.apache.org
> > > >> >>>>
> > > >> >>>>
> > > >> >>>
> > > >> >>
> > > >> >>
> > > >> >>
> > > >> >> --
> > > >> >> "Hey you! Would you help me to carry the stone?" Pink Floyd
> > > >> >>
> > > >> >
> > > >> >
> > > >> >
> > > >> > --
> > > >> > "Hey you! Would you help me to carry the stone?" Pink Floyd
> > > >> >
> > > >>
> > > >>
> > > >>
> > > >> --
> > > >> "Hey you! Would you help me to carry the stone?" Pink Floyd
> > > >>
> > > >>
> ---------------------------------------------------------------------
> > > >> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > > >> For additional commands, e-mail: dev-help@struts.apache.org
> > > >>
> > > >>
> > > >
> > >
> > >
> > >
> > > --
> > > "Hey you! Would you help me to carry the stone?" Pink Floyd
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > > For additional commands, e-mail: dev-help@struts.apache.org
> > >
> > >
>
> _________________________________________________________________
> Hotmail: Free, trusted and rich email service.
> http://clk.atdmt.com/GBL/go/171222984/direct/01/
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message