当我试图从泽西客户端创建一个WebTarget时,我会得到以下异常。
我的代码
Client client = ClientBuilder.newClient();
WebTarget baseTarget = client.target("http://127.0.0.1:9000");异常堆栈跟踪
java.lang.IllegalStateException: No generator was provided
and there is no default generator registered
at org.glassfish.hk2.internal.ServiceLocatorFactoryImpl.internalCreate(ServiceLocatorFactoryImpl.java:266)
at org.glassfish.hk2.internal.ServiceLocatorFactoryImpl.create(ServiceLocatorFactoryImpl.java:247)
at org.glassfish.jersey.internal.inject.Injections._createLocator(Injections.java:138)
at org.glassfish.jersey.internal.inject.Injections.createLocator(Injections.java:109)
at org.glassfish.jersey.internal.RuntimeDelegateImpl.<init>(RuntimeDelegateImpl.java:61)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at java.lang.Class.newInstance(Class.java:374)
at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:118)
at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:225)
at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:135)
at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:120)
at javax.ws.rs.core.UriBuilder.newInstance(UriBuilder.java:95)
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.client.JerseyWebTarget.<init>(JerseyWebTarget.java:71)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:185)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:70)有什么问题吗?
发布于 2014-09-25 10:12:33
将泽西-ext目录中的下列档案添加到类路径中:
HK2-api-*..jar
HK2-定位器-*..jar
HK2-功用-*..jar
javax-inject-*..jar
泽西岛-番石榴-*
发布于 2014-10-10 16:36:07
在您的OSGi框架上注册HK2-定位器和javassist作为包。
泽西岛使用HK2定位器在OSGi上查找服务。
发布于 2015-12-07 00:58:16
我也遇到了同样的问题,我最终可以通过启动包来解决这个问题,这个包使用泽西在Felix框架(OSGi-5.4)中发布一个2级的端点。我不知道原因,但似乎是HK2-定位器依赖关系:
需要在使用它们的捆绑包之前先开始:
一旦您将包设置为在这个新级别上启动,然后确保在Felix控制台中执行frameworklevel 2以启动该级别下的包。重新启动框架,它就能工作了。
https://stackoverflow.com/questions/25740556
复制相似问题