Java 在WebLogic12.2.1中禁用WADL
我正在尝试禁用Java 在WebLogic12.2.1中禁用WADL,java,rest,jersey,jax-rs,weblogic,Java,Rest,Jersey,Jax Rs,Weblogic,我正在尝试禁用WADL,而不使用JMX选项或web.xml选项 简单的JAX-RS应用程序类如下: @ApplicationPath("resources") public class TestWADL extends Application { public Map<String, Object> getProperties() { Map<String, Object> props = new HashMap(); props.put("j
WADL
,而不使用JMX选项或web.xml
选项
简单的JAX-RS
应用程序类如下:
@ApplicationPath("resources")
public class TestWADL
extends Application
{
public Map<String, Object> getProperties()
{
Map<String, Object> props = new HashMap();
props.put("jersey.config.server.wadl.disableWadl", true);
return props;
}
}
我找到了一种动态禁用/启用wadl的方法(如果您没有在web.xml中指定属性),如下所示:
package client;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
import org.glassfish.jersey.server.wadl.WadlApplicationContext;
@Path("test")
public class MyJersey {
public MyJersey() {
super();
}
@Path("switchwadl")
@POST
public void switchMethod(@Context WadlApplicationContext wadlApplicationContext) {
wadlApplicationContext.setWadlGenerationEnabled(!wadlApplicationContext.isWadlGenerationEnabled());
}
}
您可以覆盖Jersey提供的默认WADL生成器,以不返回任何内容
给出了一个起点。嘿,我面临着同样的异常,您是否成功地解决了它?“jersey.config.server.wadl.disableWadl”键是正确的。你能分享一下你是如何为jax rs和通用属性配置系统的吗?我也有同样的问题,它看起来像一个bug(注意,它在WLS12.1.3上成功运行)。为了提供信息,我打开了一个关于Oracle支持的SR。@Rouliboy您是否收到过关于SR的回复?我现在也遇到了同样的问题。您可以使用包org.glassfish.jersey.server的ServerProperties.WADL\u FEATURE\u DISABLE常量来代替硬编码字符串
package client;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
import org.glassfish.jersey.server.wadl.WadlApplicationContext;
@Path("test")
public class MyJersey {
public MyJersey() {
super();
}
@Path("switchwadl")
@POST
public void switchMethod(@Context WadlApplicationContext wadlApplicationContext) {
wadlApplicationContext.setWadlGenerationEnabled(!wadlApplicationContext.isWadlGenerationEnabled());
}
}