我根本无法从Liferay的7 调用REST Web服务创建我使用Eclipse REST的模块,它给了我下面的条目的build.gradle默认:Liferay的7 - 最简单的方式来消耗REST Web服务不工作
dependencies {
compileOnly group: 'javax.ws.rs', name: 'javax.ws.rs-api', version: '2.0.1'
compileOnly group: "org.osgi", name: "org.osgi.service.component.annotations", version: "1.3.0"
}
代码来调用REST Web服务:
String uri = "http://RestServiceURL";
Client client = ClientBuilder.newClient();
WebTarget target = client.target(uri);
String result = target.request(MediaType.TEXT_PLAIN_TYPE)
.get().readEntity(String.class);
当我部署和调用REST服务的错误:
Caused by: java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder cannot be found by com.liferay.portal.remote.cxf.common_2.0.6
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:444)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:357)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:349)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at javax.ws.rs.client.FactoryFinder.newInstance(FactoryFinder.java:115)
at javax.ws.rs.client.FactoryFinder.find(FactoryFinder.java:225)
at javax.ws.rs.client.ClientBuilder.newBuilder(ClientBuilder.java:86)
... 110 more
我尝试添加下面进入的build.gradle
compile group: 'org.glassfish.jersey.core', name: 'jersey-client', version: '2.21'
有使这项工作的任何具体的项目?