Why IllegalStateException occurs when configuring http access log in jetty.xml
Issue
- When configuring
"jetty.xml"for an http access log cxf crashes with an"IllegalStateException"
2014-12-01 11:36:04,663 | ERROR | FelixStartLevel | WebApplication | 168 - org.ops4j.pax.web.pax-web-extender-whiteboard - 3.0.6 | Registration skipped for [ServletWebElement{mapping=DefaultServletMapping{httpContextId=null,urlPatterns=null,initParams={},servlet=org.apache.cxf.transport.servlet.CXFNonSpringServlet@148be2a3, alias=/cxf, servletNamecxf-osgi-transport-servlet}}] due to error during registration
java.lang.IllegalStateException: STARTED
at org.eclipse.jetty.server.handler.HandlerCollection.setHandlers(HandlerCollection.java:80)[92:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.server.handler.HandlerCollection.addHandler(HandlerCollection.java:282)[92:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:150)[92:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:116)[92:org.eclipse.jetty.aggregate.jetty-all-server:8.1.14.v20131031]
.
.
2014-12-01 11:36:06,572 | ERROR | FelixStartLevel | fabric-redirect | 103 - io.fabric8.fabric-redirect - 1.0.0.redhat-379 | [io.fabric8.redirect(44)] The activate method has thrown an exception
java.lang.IllegalStateException: STARTED
at org.eclipse.jetty.server.handler.HandlerCollection.setHandlers(HandlerCollection.java:80)
at org.eclipse.jetty.server.handler.HandlerCollection.addHandler(HandlerCollection.java:282)
at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:150)
-
Prior to adding the config, cxf is functional but after adding the config, cxf returns a 404 error but eh access log is functional.
-
The
"jetty.xml"has the following added entry in it which seems to be causing the issue.
<Set name="handler">
<New id="Handlers" class="org.eclipse.jetty.server.handler.HandlerCollection">
<Set name="handlers">
<Array type="org.eclipse.jetty.server.Handler">
<Item>
<New id="Contexts" class="org.eclipse.jetty.server.handler.ContextHandlerCollection"/>
</Item>
<Item>
<New id="DefaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler"/>
</Item>
<Item>
<New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler"/>
</Item>
</Array>
</Set>
</New>
</Set>
<Ref id="RequestLog">
<Set name="requestLog">
<New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">
<Arg><SystemProperty name="KARAF_HOME" default="./data/log"/>/yyyy_mm_dd.http.log</Arg>
<Set name="retainDays">90</Set>
<Set name="append">true</Set>
<Set name="extended">false</Set>
<Set name="LogTimeZone">EST</Set>
</New>
</Set>
</Ref>
Environment
- Red Hat JBoss Fuse
- 6.1.0
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
