Yep. Works great on my cases now. Thanks! I suppose this is general fix that should prevent any more unforseen conflicts..
-eric On Tue, Nov 10, 2009 at 10:52 PM, Musachy Barroso <musa...@gmail.com> wrote: > I commited a fix (aka hack), and it seems to work in both tomcat and > jetty. basically, in JspFactory if the servlet passed as a param is > not one that the embedded jsp plugin created, then I delegate the call > to jasper's JspFactory. Let me know if it works. > > musachy > > On Tue, Nov 10, 2009 at 8:24 AM, Musachy Barroso <musa...@gmail.com> > wrote: > > thanks Eric, I will take a look tonight. > > > > musachy > > > > On Tue, Nov 10, 2009 at 7:13 AM, Obinna <obi...@gmail.com> wrote: > >> Hi Musachy, > >> > >> There's another classloading conflict issue with the embedded jsp > plugin. > >> This one has to do with the ELContextImpl. > >> > >> Loading an embedded jsp page that uses EL and then trying to load a > normal > >> page that uses EL throws: > >> > >> java.lang.ClassCastException: > >> org.apache.struts2.jasper.el.ELContextImpl cannot be cast to > >> org.apache.jasper.el.ELContextImpl > >> at > >> > org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:920) > >> > >> Again, the embedded jsp page seems to cache it's version of the > >> ELContextImpl ( ion PageContextImpl.proprietaryEvaluate) which tomcat > then > >> tries to cast to it's own version. > >> > >> It looks like I could simply stop PageContextImpl from storing it's > >> generated EL context by modifying the getELContext() method, but I'm > >> guessing on a page/application with a lot of expressions that could hurt > >> quite a bit. > >> > >> - Eric > >> > >> > >> > >> On Tue, Oct 20, 2009 at 9:46 PM, Obinna <obi...@gmail.com> wrote: > >> > >>> Tested it and it works for me! > >>> Great! Thanks a million. > >>> > >>> - Eric > >>> > >>> On Tue, Oct 20, 2009 at 9:13 PM, Musachy Barroso <musa...@gmail.com > >wrote: > >>> > >>>> small fix to JspApplicationContextImpl seems to make it work for > >>>> me(add the hash of the classloader to the key), give it a try and let > >>>> me know (update from trunk) > >>>> > >>>> musachy > >>>> > >>>> On Tue, Oct 20, 2009 at 11:00 AM, Musachy Barroso <musa...@gmail.com> > >>>> wrote: > >>>> > ok I was able to reproduce it, working on it (looks hairy) > >>>> > > >>>> > musachy > >>>> > > >>>> > On Tue, Oct 20, 2009 at 7:01 AM, Obinna <obi...@gmail.com> wrote: > >>>> >> 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 < > mgai...@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: obi...@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 < > musa...@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 <obi...@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 < > >>>> musa...@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 < > >>>> musa...@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 < > >>>> >>> musa...@gmail.com> > >>>> >>> > > >> wrote: > >>>> >>> > > >> >> pretty consistent :), I will try to take a look. > >>>> >>> > > >> >> > >>>> >>> > > >> >> musachy > >>>> >>> > > >> >> > >>>> >>> > > >> >> On Thu, Oct 15, 2009 at 8:23 AM, Obinna < > obi...@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 < > >>>> >>> musa...@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 < > >>>> >>> > > musa...@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 < > >>>> obi...@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 < > >>>> obi...@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 < > >>>> >>> > > >> musa...@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 < > >>>> >>> obi...@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 > < > >>>> >>> > > >> mgai...@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: musa...@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 > >>>> < > >>>> >>> > > >> >>>> musa...@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 < > >>>> >>> > > >> >>>> >>>> musa...@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 > >>>> >>> < > >>>> >>> > > >> >>>> >>>> musa...@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.petre...@gmail.com> wrote: > >>>> >>> > > >> >>>> >>>> >> > >>>> 2009/9/27 Musachy Barroso < > >>>> musa...@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-unsubscr...@struts.apache.org > >>>> >>> > > >> >>>> >>>> >> > >>>> For additional commands, e-mail: > >>>> >>> > > >> dev-h...@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-unsubscr...@struts.apache.org > >>>> >>> > > >> >>>> >>>> >> > For additional commands, e-mail: > >>>> >>> > > dev-h...@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-unsubscr...@struts.apache.org > >>>> >>> > > >> >>>> >>>> For additional commands, e-mail: > >>>> >>> dev-h...@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-unsubscr...@struts.apache.org > >>>> >>> > > >> >>>> For additional commands, e-mail: > >>>> dev-h...@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-unsubscr...@struts.apache.org > >>>> >>> > > >> For additional commands, e-mail: > dev-h...@struts.apache.org > >>>> >>> > > >> > >>>> >>> > > >> > >>>> >>> > > > > >>>> >>> > > > >>>> >>> > > > >>>> >>> > > > >>>> >>> > > -- > >>>> >>> > > "Hey you! Would you help me to carry the stone?" Pink Floyd > >>>> >>> > > > >>>> >>> > > > >>>> --------------------------------------------------------------------- > >>>> >>> > > To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org > >>>> >>> > > For additional commands, e-mail: dev-h...@struts.apache.org > >>>> >>> > > > >>>> >>> > > > >>>> >>> > >>>> >>> _________________________________________________________________ > >>>> >>> Hotmail: Free, trusted and rich email service. > >>>> >>> http://clk.atdmt.com/GBL/go/171222984/direct/01/ > >>>> >>> > >>>> >> > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > "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-unsubscr...@struts.apache.org > >>>> For additional commands, e-mail: dev-h...@struts.apache.org > >>>> > >>>> > >>> > >> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org > For additional commands, e-mail: dev-h...@struts.apache.org > >