使用PropertiesConfiguration和Tomcat的异常

时间:2013-02-27 09:07:03

标签: java exception tomcat

当我使用PropertiesConfiguration加载某些属性时,我有一个奇怪的异常。我在Web服务上工作,之前我成功使用 java.util.Properties; 调用文件 .properties 。对于这个项目,我需要在修改文件 .properties 时刷新Tomcat,所以我想使用 commons.configuration.Configuration; ,但是我收到一些例外。 这是我调用config.properties文件的代码:

private String getProperty(String property)
{
    String value = null;
    PropertiesConfiguration config = new PropertiesConfiguration();
    try {
        config.load(getClass().getResourceAsStream("config.properties"));
        config.setReloadingStrategy(new FileChangedReloadingStrategy());
        value = config.getString(property);
    } catch (ConfigurationException e) {
        e.printStackTrace();
    }       
    return value;
}

例外情况如下:

INFO: Exception:java.lang.NoClassDefFoundError: org/apache/commons/configuration/ConfigurationException
at com.sncf.ritmx.domter.service.Pandore2DomTerServiceServiceSoapBindingSkeleton.<init>(Pandore2DomTerServiceServiceSoapBindingSkeleton.java:54)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.apache.axis.providers.java.JavaProvider.makeNewServiceObject(JavaProvider.java:385)
at org.apache.axis.providers.java.JavaProvider.getNewServiceObject(JavaProvider.java:235)
at org.apache.axis.providers.java.JavaProvider.getServiceObject(JavaProvider.java:91)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:287)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)    
Caused by: java.lang.ClassNotFoundException: org.apache.commons.configuration.ConfigurationException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
... 36 more

我引用了这个post,所以我知道我必须包含一些包(所以我做了),这里包含了不同的包:

  • Apache Tomcat v7.0
  • 公地beanutilss-1.8.3.jar
  • 公地编解码器-1.7.jar
  • 公共收集-3.2.1.jar
  • 公地配置-1.9.jar
  • 公地文件上传-1.2.2.jar
  • 公地的JXPath-1.3.jar
  • 公地琅2.6.jar
  • 共享记录-1.1.1.jar
  • EAR Librairies
  • JRE系统库
  • 网络应用程序库

我还可以添加webservice的结果,而不是真的知道它是否有用,以防万一:

Exception: java.lang.NoClassDefFoundError: org/apache/commons/configuration/ConfigurationException; nested exception is: java.lang.NoClassDefFoundError: org/apache/commons/configuration/ConfigurationException Message: java.lang.NoClassDefFoundError: org/apache/commons/configuration/ConfigurationException; nested exception is: java.lang.NoClassDefFoundError: org/apache/commons/configuration/ConfigurationException 

我有点厌倦了在网上寻求并没有成功解决问题。 感谢您的回答,如果有人有解决这个问题的线索,那将是受欢迎的:)

0 个答案:

没有答案