我已经为Fiware Proton CEP部署了4个war文件,我在安装了Java SE 8和Tomcat 7后,在CentOS 6 VM上一个月前githug(我相信),这些WAR文件在zip文件中,但是现在我再也找不到github了 .
除此之外,在instructions for instalation and configuration之后,我能够让一切都变得正常 .
创作工具可用并正常工作(它可以正确地将定义导出到服务器的存储库中) . 使用Google的Postman获取http动词我发现:
-
存储库上的GET工作并检索由创作工具导出的定义:http:// :8080 / ProtonOnWebServerAdmin / resources / definitions
-
但服务器上的GET:http:// :8080 / ProtonOnWebServerAdmin / resources / instances / ProtonOnWebServer
...不起作用并响应以下html消息:
<html>
<head>
<title>Apache Tomcat/7.0.64 - Error report</title>
<style>
<!--H1 {
font-family: Tahoma, Arial, sans-serif;
color: white;
background-color: #525D76;
font-size: 22px;
}
H2 {
font-family: Tahoma, Arial, sans-serif;
color: white;
background-color: #525D76;
font-size: 16px;
}
H3 {
font-family: Tahoma, Arial, sans-serif;
color: white;
background-color: #525D76;
font-size: 14px;
}
BODY {
font-family: Tahoma, Arial, sans-serif;
color: black;
background-color: white;
}
B {
font-family: Tahoma, Arial, sans-serif;
color: white;
background-color: #525D76;
}
P {
font-family: Tahoma, Arial, sans-serif;
background: white;
color: black;
font-size: 12px;
}
A {
color: black;
}
A.name {
color: black;
}
HR {
color: #525D76;
}
-->
</style>
</head>
<body>
<h1>HTTP Status 500 - java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory</h1>
<HR size="1" noshade="noshade">
<p>
<b>type</b> Exception report
</p>
<p>
<b>message</b>
<u>java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory</u>
</p>
<p>
<b>description</b>
<u>The server encountered an internal error that prevented it from fulfilling this request.</u>
</p>
<p>
<b>exception</b>
<pre>javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
org.apache.wink.server.internal.RequestProcessor.handleRequest(RequestProcessor.java:195)
org.apache.wink.server.internal.servlet.RestServlet.service(RestServlet.java:119)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
</pre>
</p>
<p>
<b>root cause</b>
<pre>java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
org.apache.http.impl.client.AbstractHttpClient.<init>(AbstractHttpClient.java:182)
org.apache.http.impl.client.DefaultHttpClient.<init>(DefaultHttpClient.java:150)
com.ibm.hrl.proton.admin.webapp.resources.ProtonInstancesResource.getInstanceState(ProtonInstancesResource.java:248)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:497)
org.apache.wink.server.internal.handlers.InvokeMethodHandler.handleRequest(InvokeMethodHandler.java:63)
org.apache.wink.server.handlers.AbstractHandler.handleRequest(AbstractHandler.java:33)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.CreateInvocationParametersHandler.handleRequest(CreateInvocationParametersHandler.java:54)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleSubResourceMethod(FindResourceMethodHandler.java:183)
org.apache.wink.server.internal.handlers.FindResourceMethodHandler.handleRequest(FindResourceMethodHandler.java:110)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.FindRootResourceHandler.handleRequest(FindRootResourceHandler.java:95)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.HeadMethodHandler.handleRequest(HeadMethodHandler.java:53)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.OptionsMethodHandler.handleRequest(OptionsMethodHandler.java:46)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.handlers.SearchResultHandler.handleRequest(SearchResultHandler.java:33)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.log.ResourceInvocation.handleRequest(ResourceInvocation.java:92)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.internal.log.Requests.handleRequest(Requests.java:76)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:26)
org.apache.wink.server.handlers.RequestHandlersChain.handle(RequestHandlersChain.java:22)
org.apache.wink.server.handlers.AbstractHandlersChain.doChain(AbstractHandlersChain.java:63)
org.apache.wink.server.handlers.AbstractHandlersChain.run(AbstractHandlersChain.java:48)
org.apache.wink.server.internal.RequestProcessor.handleRequestWithoutFaultBarrier(RequestProcessor.java:207)
org.apache.wink.server.internal.RequestProcessor.handleRequest(RequestProcessor.java:154)
org.apache.wink.server.internal.servlet.RestServlet.service(RestServlet.java:119)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
</pre>
</p>
<p>
<b>note</b>
<u>The full stack trace of the root cause is available in the Apache Tomcat/7.0.64 logs.</u>
</p>
<HR size="1" noshade="noshade">
<h3>Apache Tomcat/7.0.64</h3>
</body>
</html>
所以,我不知道什么是错的 . 似乎Java配置存在一些问题 . 我按照提到的安装说明进行操作,因此设置了JAVA_HOME和CATALINA_HOME . 我还将JDK_HOME设置为JAVA_HOME . 显然ProtonServerAdmin工作,但ProtonServer本身没有,所以我不能让CEP真正起作用 .
当我从Tomcat的Manager API中重新加载ProtonServer应用程序时,catalina.out会记录以下内容:
Aug 29, 2015 6:03:04 PM org.apache.catalina.core.StandardContext reload
INFO: Reloading Context with name [/ProtonOnWebServer] has started
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener contextDestroyed
INFO: shutting down ProtonServletContextListener
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.server.adapter.InputServer run
INFO: Proton server has been shut down...
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.server.adapter.OutputServer run
INFO: Proton server has been shut down ...
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.server.timerService.TimerServiceFacade destroyTimers
INFO: TimerServiceFacade: destroying remaining timers...
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.server.timerService.TimerServiceFacade destroyTimers
INFO: TimerServiceFacade: destroyed remaining timers...
Aug 29, 2015 6:03:04 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener contextDestroyed
INFO: finished stopping servers successfully
Aug 29, 2015 6:03:05 PM org.apache.catalina.startup.TldConfig execute
INFO: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener contextInitialized
INFO: initializing ProtonServletContextListener
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener$1 run
INFO: context real path = /opt/apache-tomcat-7.0.64/webapps/ProtonOnWebServer/
85 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.servlet.RestServlet - The system is using the com.ibm.hrl.proton.webapp.WebApplication JAX-RS application class that is named in the javax.ws.rs.Application init-param initialization parameter.
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.server.executor.PropertiesParser loadProperties
INFO: Properties are :
metadatFile =EmptyDefinition.json
inputPortNumber =3002
outputPortNumber =3302
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener$1 run
INFO: init: initializing metadata and all the system singletons
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener$1 run
INFO: init: done initializing metadata, returned the following exceptions:
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.webapp.ProtonServletContextListener$1 run
INFO: init: done initializing singletons , starting the servers...
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.server.adapter.OutputServer run
INFO: Proton output server started, listening on output port: 3302
Aug 29, 2015 6:03:05 PM com.ibm.hrl.proton.server.adapter.InputServer run
INFO: Proton server Started, listening on port: 3002
401 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.application.ApplicationProcessor - The following JAX-RS application has been processed: com.ibm.hrl.proton.webapp.WebApplication
402 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Resources - The server has registered the JAX-RS resource class deprecated.EventResourcePlainTextDeprecated with @Path(/events-plain-text).
402 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Resources - The server has registered the JAX-RS resource class deprecated.EventResourceJSONDeprecated with @Path(/events-json).
402 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Resources - The server has registered the JAX-RS resource class com.ibm.hrl.proton.webapp.resources.EventResource with @Path(/events).
408 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Providers - The class com.ibm.hrl.proton.webapp.providers.EventPlainTextMessageReader was registered as a JAX-RS MessageBodyReader provider for com.ibm.hrl.proton.runtime.event.interfaces.IEventInstance Java types and text/plain media types.
410 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Providers - The class com.ibm.hrl.proton.webapp.providers.EventJSONMessageReader was registered as a JAX-RS MessageBodyReader provider for com.ibm.hrl.proton.runtime.event.EventInstance Java types and application/json media types.
410 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Providers - The class com.ibm.hrl.proton.webapp.providers.EventXmlNgsiMessageReader was registered as a JAX-RS MessageBodyReader provider for com.ibm.hrl.proton.runtime.event.EventInstance Java types and application/xml media types.
410 [http-bio-8080-exec-9] INFO org.apache.wink.server.internal.log.Providers - The class com.ibm.hrl.proton.webapp.exceptions.ResponseExceptionMapper was registered as a JAX-RS ExceptionMapper provider for com.ibm.hrl.proton.webapp.exceptions.ResponseException Java types.
467 [http-bio-8080-exec-9] INFO org.apache.wink.common.internal.application.ApplicationFileLoader - The runtime is loading the JAX-RS application from jar:file:/opt/apache-tomcat-7.0.64/webapps/ProtonOnWebServer/WEB-INF/lib/wink-json4j-provider-1.2.0-incubating.jar!/META-INF/wink-application
Aug 29, 2015 6:03:06 PM org.apache.catalina.core.StandardContext reload
INFO: Reloading Context with name [/ProtonOnWebServer] is completed
..似乎没有显示任何警示报告 .
当我在服务器上执行GET时,catalina.out只记录:
Aug 29, 2015 6:05:11 PM com.ibm.hrl.proton.admin.webapp.resources.ProtonInstancesResource getInstanceState
INFO: starting getInstanceState
1584935 [http-bio-8080-exec-11] ERROR org.apache.wink.server.internal.RequestProcessor - An unhandled exception occurred which will be propagated to the container.
那么,那里没有线索 .
如果您需要更多信息,请告诉我 .
谢谢
1 回答
我找到了RPMs here . 它们是一个新版本,它们没有像我描述的那样出现问题 . 它们在存储库中更深处,并且由于某种原因它们不会显示在存储库的"quickly jump between files"部分 .
但只有一件事......当您下载它们时,通过从末尾删除“-0.0.1”来更改它们的名称 . 它似乎不会影响质子服务器和服务器管理员(因为你可以根据需要命名它们),但事实证明它与我的案例中的创作工具的RPM相关 . 或许它只是我的网络浏览器内存上的创作工具与新版本冲突 . 这是因为API的URL是基于RPM名称设置的 .
谢谢