我有一个小项目,当我让它运行时确实会引发异常。
问题在这里(TestObject.java):
final JAXBContext jaxbContext = JAXBContext.newInstance(...);
Run Code Online (Sandbox Code Playgroud)
我真的不明白为什么会抛出异常。我还创建了一个像超级按钮一样工作的测试(TestTest.java)。请原谅我的名字,但这只是一个小的测试应用程序,它可以与Java 11一起使用。
我遵循以下步骤:javax.xml.bind.JAXBException在模块路径或类路径上未找到 并添加了JAXB-API的实现
compile('javax.xml.bind:jaxb-api:2.3.0')
compile('javax.activation:activation:1.1')
compile('org.glassfish.jaxb:jaxb-runtime:2.3.0')
Run Code Online (Sandbox Code Playgroud)
到我的build.gradle,但随后它抱怨
Error:java: module not found: java.activation
Run Code Online (Sandbox Code Playgroud)
不见了。由于这也从Java 11中删除,因此我添加了:
compile 'com.sun.activation:javax.activation:1.2.0'
Run Code Online (Sandbox Code Playgroud)
但随后引发了很多错误:
Error:java: the unnamed module reads package com.sun.xml.bind from both jaxb.runtime and jaxb.core
Error:java: the unnamed module reads package com.sun.xml.bind.util from both jaxb.runtime and jaxb.core
Error:java: the unnamed module reads package com.sun.xml.bind.marshaller from both jaxb.runtime and jaxb.core
Error:java: the unnamed module reads package com.sun.xml.bind.api from both jaxb.runtime and jaxb.core
Error:java: the unnamed module reads …Run Code Online (Sandbox Code Playgroud) 我在一个带有 Java+Jboss 的 Web 项目上使用 Jersey 1.19.1。
每次我从 Web 服务请求某些内容时,它都会在 server.log 上显示以下条目:
ERROR [STDERR] com.sun.jersey.server.wadl.generators.AbstractWadlGeneratorGrammarGenerator attachTypes
INFO: Couldn't find grammar element for class java.lang.String
Run Code Online (Sandbox Code Playgroud)
搜索如何禁用它,我发现了这个:
<init-param>
<param-name>com.sun.jersey.config.server.wadl.DisableWADL</param-name>
<param-value>true</param-value>
</init-param>
Run Code Online (Sandbox Code Playgroud)
但这对我来说并没有改变。
如何禁用 WADL 以便不再显示这条烦人的消息?
这是 servlet 的完整条目:
<servlet>
<servlet-name>windi-mobile-service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.server.wadl.DisableWADL</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>br.com.altimus.mobile.service</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
Run Code Online (Sandbox Code Playgroud)