2014-09-29 40 views
1

我使用的球衣我的web服务没有错误,这是我的web.xml看起来像:的Tomcat无法解析web.xml中,在提到代码点

<?xml version="1.0" encoding="UTF-8"?> 
<web-app> 
    <servlet> 
     <servlet-name>jersey</servlet-name> 
     <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> 

     <init-param> 
      <param-name>com.sun.jersey.config.property.packages</param-name> 
      <param-name>com.rohanprabhu.external.interfaces.service.web</param-name> 
     </init-param>** 

     <init-param> 
      <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name> 
      <param-name>true</param-name> 
     </init-param> 

     <load-on-startup>5</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>jersey</servlet-name> 
     <url-pattern>*</url-pattern> 
    </servlet-mapping> 
</web-app> 

我得到一个错误Occurred at line 10 column 22 ,这是我在文件中标记为'**'的地方(它实际上并不在文件中,我只是把它放在这里)。这里是堆栈跟踪的(部分),我得到:

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:483) 
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54) 
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35) 
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23) 
Caused by: java.lang.IllegalArgumentException: Can't convert argument: null 
    at org.apache.tomcat.util.IntrospectionUtils.convert(IntrospectionUtils.java:889) 
    at org.apache.tomcat.util.digester.CallMethodRule.end(CallMethodRule.java:476) 
    at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1057) 
    ... 188 more 
Occurred at line 10 column 22 
Marking this application unavailable due to previous error(s) 

下面是完整的堆栈跟踪,如果可以帮助:http://pastebin.com/EX4bMGex

回答

3

我同意的错误消息是最理想的,但我也肯定你需要一个<param-name>和一个<param-value><init-param>。 :-)

+0

哦..是啊..这里有点无语。这(叹气)..是正确的答案。提名一个白痴,并享受你的代表:\ – 2014-09-29 15:39:24

+0

@RohanPrabhu然而,这是一个非常糟糕的错误消息。事实上,这些错误信息是什么使JEE发展很难... – 2014-09-29 15:40:50

+0

我同意..我猜无论他们内部的架构可能有资格这个错误陈述有一些背后的推理,但它是非常混乱,绝对不指出用户在正确的方向(这正是我们为什么强调带有消息的例外)。 – 2014-09-29 15:42:48

1

您使用<param-name>两次。但其他init属性应为<param-value>