- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
首先我应该说我是 Maven 的新手,甚至认为我不认为 Maven 与这个错误有关。我正在使用 Eclipse 4.2.1 和 m2e
我有从 ckan4j 获得的代码开发者
Client c = ClientBuilder.newBuilder().register(MultiPartFeature.class).build();
WebTarget wt = c.target("192.168.1.2/action").path("resource_update");
Builder b = wt.request();
b.header("authorization", "fa0499d1-ffda-4590-82b3-4afdb9c91576");
FileDataBodyPart filePart = new FileDataBodyPart("upload", new File("/home/ilias/Downloads/OdtUtils.java"));
FormDataMultiPart multipart = (FormDataMultiPart) new FormDataMultiPart().field("id","test2").bodyPart(filePart);
String response_string = b.post(Entity.entity(multipart, multipart.getMediaType())).readEntity(String.class);
System.out.println(response_string);
这是我的 pom.xml 文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ckanTest2</groupId>
<artifactId>ckanConn2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>CkanConnectTest</name>
<dependencies>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-client</artifactId>
<version>3.0.2.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-multipart-provider</artifactId>
<version>3.0.11.Final</version>
</dependency>
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-multipart</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.5.2</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId>
<version>2.18</version>
</dependency>
</dependencies>
</project>
我不是 100% 确定依赖项,但我只是在搜索我在编译时遇到的错误并在此处添加结果,直到我没有错误为止。现在,当我构建 Maven(使用 generate-sources
)时,我得到了这个
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J:
See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[INFO]
[INFO]-----------------------------------------------------------------------
[INFO] Building CkanConnectTest 0.0.1-SNAPSHOT
[INFO]------------------------------------------------------------------------
[INFO]------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO]------------------------------------------------------------------------ [INFO] Total time: 0.298s
[INFO] Finished at: Wed Jun 24 19:50:57 EEST 2015
[INFO] Final Memory: 6M/58M
[INFO]------------------------------------------------------------------------
甚至认为它在提示记录器,我现在并不急于解决。除此之外,它似乎正在 build 中。
当尝试执行 java 文件时,我得到了这个
Exception in thread "main" java.lang.RuntimeException: Unable to instantiate MessageBodyReader
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1371)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1310)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1232)
at org.jboss.resteasy.spi.ResteasyProviderFactory.register(ResteasyProviderFactory.java:2364)
at org.jboss.resteasy.spi.ResteasyProviderFactory.register(ResteasyProviderFactory.java:97)
at org.jboss.resteasy.util.FeatureContextDelegate.register(FeatureContextDelegate.java:37)
at org.jboss.resteasy.util.FeatureContextDelegate.register(FeatureContextDelegate.java:12)
at org.glassfish.jersey.media.multipart.MultiPartFeature.configure(MultiPartFeature.java:65)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1673)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1310)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1232)
at org.jboss.resteasy.spi.ResteasyProviderFactory.register(ResteasyProviderFactory.java:2364)
at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.register(ResteasyClientBuilder.java:361)
at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.register(ResteasyClientBuilder.java:48)
at cKanTest.CkanAlpha.main(CkanAlpha.java:17)
Caused by: java.lang.IllegalArgumentException: Unable to find a public constructor for provider class
org.glassfish.jersey.media.multipart.internal.MultiPartReaderServerSide
at org.jboss.resteasy.spi.ResteasyProviderFactory.createConstructorInjector(ResteasyProviderFactory.java:2184)
at org.jboss.resteasy.spi.ResteasyProviderFactory.createProviderInstance(ResteasyProviderFactory.java:2173)
at org.jboss.resteasy.spi.ResteasyProviderFactory.addMessageBodyReader(ResteasyProviderFactory.java:748)
at org.jboss.resteasy.spi.ResteasyProviderFactory.registerProvider(ResteasyProviderFactory.java:1366)
... 14 more
我使用xml标签只是为了让xml代码更易读
最佳答案
我遇到了 RestEasy 和 Jersey (org.glassfish.jersey.media) 组合引起的同样问题:
ResteasyProviderFactory factory = ResteasyProviderFactory.getInstance();
ResteasyProviderFactory.pushContext(javax.ws.rs.ext.Providers.class, factory);
另一个提示是使用依赖项 jersey-media-multipart 而不是 jersey-multipart
关于java - 无法实例化 MessageBodyReader 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31033001/
我有一个MessageBodyReader具有以下类: @Provider @Consumes(MediaType.APPLICATION_JSON) public class Transaction
给定类似的内容: 例如 class User{ String name; String someField1; } @Consumes("some/media-type") class Re
我正在为 restful web 服务制作一个 java 客户端,我想在请求正文中发送一个字符串。 这是我的课。 public class params { private String t
我正在尝试实现一个新的 MessageBodyReader/Writer 组合,但阅读器部分遇到问题。鉴于以下声明 public class Jsr367EnumProvider implements
我有这个界面: @Path("inbox") public interface InboxQueryResourceTest { @POST @Path("{membershipEx
我有课 public class Tree { private T value; private Tree parent; private List> children;
我有某种类型的 XSD 架构,我们将其命名为 A。 然后我尝试使用 XSD 架构验证编写 MessageBodyReader - 如果我在那里传递单个对象,它就可以工作。但我怎样才能让它读取这些类型的
我编写了一个简单的 RestEasy 客户端代理来执行 iTunes 搜索。它看起来像这样: @Path("/") public interface AppleAppStoreLookupClient
我正在尝试将 Jersey 与我自己的 json MessageBodyReader/MessageBodyWriter 一起使用(因为我没有在我的域类上使用 @XmlRootElement... 注
所以,我有一个 REST 应用程序,看起来像这样: @GET @Produces(MediaType.APPLICATION_JSON) @Path("/getpartners") public Ha
我正在从提供者处了解 MessageBodyReader 方法的工作原理。我看到该方法返回一个对象,但我不确定如何从服务访问该对象。我能否得到有关如何从阅读器类返回对象的解释?这将帮助我为所有 DTO
首先我应该说我是 Maven 的新手,甚至认为我不认为 Maven 与这个错误有关。我正在使用 Eclipse 4.2.1 和 m2e 我有从 ckan4j 获得的代码开发者 Client c = C
我想使用 Grails-jaxrs plugin实现自定义 MessageBodyReaderSupport从客户端读取 UserDto 类。 如何实现 UserDtoReader 才能获取 User
我有一个 REST api,它返回一个 json 格式的对象,Content-Type 为 application/json,非常标准。 我正在使用 Jersey 的测试框架创建一个基本的 TestN
以下方法不允许我的 servlet 容器启动: @PUT public String upload(final Customer customer, final Control control) {
我正在尝试使用预配置的资源实例在预配置的端口/url 上启动 Jersey。我不太清楚如何正确地做到这一点。 这是一段代码。请帮我填空: @Component @PerRequest @Path("/
我在 Response 对象中返回一个 StreamingOutput: @GET @Path("/downloadFile/{filename}") @Produces(MediaType.TEXT
我已经在 SO 上发现了一些类似的问题,但似乎没有一个能解决我的特定问题,而且我一直无法自己找到解决方案。 这是我遇到的错误: Caused by: org.glassfish.jersey.mess
我试图在 Jersey 的 MessageBodyReader 中读取 APPLICATION_FORM_URLENCODED。当我尝试使用 BufferedReader 读取流时,流返回空数据 这是
我正在尝试从 http://api.openweathermap.org/data/2.5/forecast/daily?lat=35&lon=139&cnt=10&mode=json 接收 json
我是一名优秀的程序员,十分优秀!