You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Jonas Decker <jd...@gmx.de> on 2015/07/23 12:46:55 UTC

BlobMessage: fileserver webapp does not work in tomcat

Hello,

i try to use BlobMessages with an embedded AMQ_5.11.1 in tomcat_7.0.62 (Java
1.7_71 (64bit))

The AMQ-fileserver does not work in tomcat because it depens on
'*jetty.*DefaultServlet.class'

What can i do to make BlobMessages work within without jetty.
FTP is no option

Greetings 

Jonas



--
View this message in context: http://activemq.2283324.n4.nabble.com/BlobMessage-fileserver-webapp-does-not-work-in-tomcat-tp4699740.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: BlobMessage: fileserver webapp does not work in tomcat

Posted by Tim Bain <tb...@alumni.duke.edu>.
Ah, I see what you mean now.  You can submit an enhancement request in JIRA
(
https://issues.apache.org/jira/browse/AMQ/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel)
to allow the webapp to work when embedded in any web server.

In the meantime, if the fileserver app was a must-have for you, you could
always run the broker stand-alone rather than embedded in Tomcat.

Tim

On Mon, Jul 27, 2015 at 4:02 AM, Jonas Decker <jd...@gmx.de> wrote:

> Hello Tim,
>
> thanks for the answer.
> No, its not that simple sadly.
> I have reproduced the exception for you and will append it at the end of
> this message.
> The Class '*jetty.*DefaultServlet.class' is not running within tomcat!
>
> I have looked into the code of that class to see if i can make it run, but
> the DefaultServlet depends on jetty in a lot of ways, of course.
>
> I don't think jettys DefaultServlet will run under tomcat or other servers
> (Websphere, Glassfish and so on)!
>
> So in my opinion:
> If you want people to use BlobMessages and out-of-band transport, AMQ
> should
> provide a generic fileserver webapp, or some differnt fileserver webapps
> for
> most popular webservers!
>
> I have switched to jms.ByteMessages and zipped streams successfully.
>
> I posted here to help make AMQ better. Using it since a few month and i am
> still enthusiastic.
> The jetty-specific fileserer is the first negative impression only.
>
> Greetings
>
> Jonas
>
> java.lang.IllegalArgumentException: The servletContext
> org.apache.catalina.core.ApplicationContextFacade@77d0933e
> org.apache.catalina.core.ApplicationContextFacade is not
> org.eclipse.jetty.server.handler.ContextHandler$Context
>
>
> org.eclipse.jetty.servlet.DefaultServlet.initContextHandler(DefaultServlet.java:317)
>
> org.eclipse.jetty.servlet.DefaultServlet.init(DefaultServlet.java:179)
>         javax.servlet.GenericServlet.init(GenericServlet.java:158)
>
>
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
>
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
>
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
>
>
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
>
>
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
>
>
> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2476)
>
>
> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2465)
>         java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
>         java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>
>
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>         java.lang.Thread.run(Unknown Source)
>
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/BlobMessage-fileserver-webapp-does-not-work-in-tomcat-tp4699740p4699908.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Re: BlobMessage: fileserver webapp does not work in tomcat

Posted by Jonas Decker <jd...@gmx.de>.
Hello Tim,

thanks for the answer.
No, its not that simple sadly.
I have reproduced the exception for you and will append it at the end of
this message.
The Class '*jetty.*DefaultServlet.class' is not running within tomcat!

I have looked into the code of that class to see if i can make it run, but
the DefaultServlet depends on jetty in a lot of ways, of course.
 
I don't think jettys DefaultServlet will run under tomcat or other servers
(Websphere, Glassfish and so on)!

So in my opinion: 
If you want people to use BlobMessages and out-of-band transport, AMQ should
provide a generic fileserver webapp, or some differnt fileserver webapps for
most popular webservers!

I have switched to jms.ByteMessages and zipped streams successfully.

I posted here to help make AMQ better. Using it since a few month and i am
still enthusiastic.
The jetty-specific fileserer is the first negative impression only.

Greetings

Jonas

java.lang.IllegalArgumentException: The servletContext
org.apache.catalina.core.ApplicationContextFacade@77d0933e
org.apache.catalina.core.ApplicationContextFacade is not
org.eclipse.jetty.server.handler.ContextHandler$Context
       
org.eclipse.jetty.servlet.DefaultServlet.initContextHandler(DefaultServlet.java:317)
       
org.eclipse.jetty.servlet.DefaultServlet.init(DefaultServlet.java:179)
        javax.servlet.GenericServlet.init(GenericServlet.java:158)
       
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
       
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
       
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
       
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
       
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
       
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
       
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2476)
       
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2465)
        java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
       
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        java.lang.Thread.run(Unknown Source)
 




--
View this message in context: http://activemq.2283324.n4.nabble.com/BlobMessage-fileserver-webapp-does-not-work-in-tomcat-tp4699740p4699908.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: BlobMessage: fileserver webapp does not work in tomcat

Posted by Tim Bain <tb...@alumni.duke.edu>.
Is the dependency problem simply that you don't have the right JAR on the
classpath?  (In which case, the solution seems like it should be pretty
straightforward...)

Tim

On Thu, Jul 23, 2015 at 4:46 AM, Jonas Decker <jd...@gmx.de> wrote:

> Hello,
>
> i try to use BlobMessages with an embedded AMQ_5.11.1 in tomcat_7.0.62
> (Java
> 1.7_71 (64bit))
>
> The AMQ-fileserver does not work in tomcat because it depens on
> '*jetty.*DefaultServlet.class'
>
> What can i do to make BlobMessages work within without jetty.
> FTP is no option
>
> Greetings
>
> Jonas
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/BlobMessage-fileserver-webapp-does-not-work-in-tomcat-tp4699740.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>