JSPs are loaded from a separate classloader. The workaround for this is to
put your code into a Java class and call that from the JSP. We need to
properly fix this though; wherever we have duplicated JARs we will see such
problems.


On Wed, Jun 8, 2011 at 3:41 PM, Amani Soysa <[email protected]> wrote:

> Hi,
>
> Following exception occurs when trying to call DataHandler objects in jsp
>
> [2011-06-08 15:32:16,777] ERROR
> {org.apache.catalina.core.ContainerBase.[Tomcat].[defaulthost].[/].[bridgeservlet]}
> -  Servlet.service() for servlet [bridgeservlet] in context with path [/]
> threw exception [Exception in JSP: /log-view/downloadgz-ajaxprocessor.jsp:71
>
> 68:         serviceName = (serviceName == null) ? "WSO2 Stratos Manager" :
> serviceName;
> 69:
> *70:         DataHandler logs =
> logViewerClient.downloadLogsFromZip(downloadFile,tenantDomain,serviceName);
> 71:         InputStream fileToDownload = logs.getInputStream();*
> 72:         int c;
> 73:         while((c=fileToDownload.read()) != -1){
> 74:             zipOutputStream.write(c);
>
>
> Stacktrace:] with root cause
> java.lang.LinkageError: loader constraint violation: loader (instance of
> org/apache/jasper/servlet/JasperLoader) previously initiated loading for a
> different type with name "javax/activation/DataHandler"
>     at
> org.apache.jsp.log_002dview.downloadgz_002dajaxprocessor_jsp._jspService(downloadgz_002dajaxprocessor_jsp.java:137)
>     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>     at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>     at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>     at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:119)
>     at org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>     at
> org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:36)
>     at
> org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
>     at
> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
>     at
> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>     at org.wso2.carbon.bridge.BridgeServlet.service(BridgeServlet.java:155)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>     at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
>     at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
>     at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
>     at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
>     at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
>     at org.wso2.carbon.server.TomcatServer$1.invoke(TomcatServer.java:241)
>     at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
>     at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>     at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
>     at
> org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:396)
>     at
> org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:356)
>     at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1534)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>     at java.lang.Thread.run(Thread.java:662)
>
>
> Note :- axiom-1.2.11.wso2v1.jar bundle is coppied in both  /lib/api/ and
> repository/components/plugins/ locations
>
>
> Regards
> Amani
>
>
> _______________________________________________
> Carbon-dev mailing list
> [email protected]
> http://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>
>


-- 
*Afkham Azeez*
Director of Architecture; WSO2, Inc.; http://wso2.com
Member; Apache Software Foundation; http://www.apache.org/
* <http://www.apache.org/>**
email: **[email protected]* <[email protected]>* cell: +94 77 3320919
blog: **http://blog.afkham.org* <http://blog.afkham.org>*
twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
*
linked-in: **http://lk.linkedin.com/in/afkhamazeez*
*
*
*Lean . Enterprise . Middleware*
_______________________________________________
Carbon-dev mailing list
[email protected]
http://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev

Reply via email to