当前位置: 首页 > 面试题库 >

Jersey 2.0等效于POJOMappingFeature

黄信厚
2023-03-14
问题内容

我有一些使用Jersey <2.0的经验。现在,我正在尝试构建一个战争应用程序以提供JSON Webservice API。

我现在花了大量时间尝试配置Moxy,而且接缝比添加的要复杂得多

    <init-param>
        <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
        <param-value>true</param-value>
    </init-param>

回到Jersey <2.0中的web.xml。

是否有可能只是说“请添加json支持”?

目前,我在服务器上没有任何日志条目的情况下,收到了很多内部服务器错误错误,只是觉得“我必须做完全错误的事情,这不可能那么难”

谁能给我一个提示?


问题答案:

您可以通过JAX-RS 类配置 EclipseLink
MOXy

,将其配置为JSON绑定提供程序。MOXyJsonProvider``Application

例子1

package org.example;

import java.util.*;
import javax.ws.rs.core.Application;
import org.eclipse.persistence.jaxb.rs.MOXyJsonProvider;

public class CustomerApplication  extends Application {

    @Override
    public Set<Class<?>> getClasses() {
        HashSet<Class<?>> set = new HashSet<Class<?>>(2);
        set.add(MOXyJsonProvider.class);
        set.add(CustomerService.class);
        return set;
    }

}

范例#2

package org.example;

import java.util.*;
import javax.ws.rs.core.Application;
import org.eclipse.persistence.jaxb.rs.MOXyJsonProvider;

public class CustomerApplication  extends Application {

    @Override
    public Set<Class<?>> getClasses() {
        HashSet<Class<?>> set = new HashSet<Class<?>>(1);
        set.add(ExampleService.class);
        return set;
    }

    @Override
    public Set<Object> getSingletons() {
        MOXyJsonProvider moxyJsonProvider = new MOXyJsonProvider();

        moxyJsonProvider.setAttributePrefix("@");
        moxyJsonProvider.setFormattedOutput(true);
        moxyJsonProvider.setIncludeRoot(true);
        moxyJsonProvider.setMarshalEmptyCollections(false);
        moxyJsonProvider.setValueWrapper("$");

        Map<String, String> namespacePrefixMapper = new HashMap<String, String>(1);
        namespacePrefixMapper.put("http://www.example.org/customer", "cust");
        moxyJsonProvider.setNamespacePrefixMapper(namespacePrefixMapper);
        moxyJsonProvider.setNamespaceSeparator(':');

        HashSet<Object> set = new HashSet<Object>(1);
        set.add(moxyJsonProvider);
        return set;
    }

}

想要查询更多的信息

  • http://blog.bdoughan.com/2012/05/moxy-as-your-jax-rs-json-provider.html
  • http://blog.bdoughan.com/2013/06/moxy-is-new-default-json-binding.html


 类似资料:
  • 问题内容: 我正在从xml配置转移到注释。我想转换一个会话范围的bean是 可以通过注释完成此操作吗?如果没有,我该怎么做才能使该声明继续工作? 问题答案: 在spring上下文xml中,执行以下操作: 请注意,尽管如此,你将需要为该包中的所有类编写接口。

  • 问题内容: 该表示法是: 实际上不哈希对象;它实际上只是转换为字符串(通过它是一个对象,还是其他各种原始类型的内置转换),然后在“ ”中查找该字符串,而不对其进行哈希处理。也不会检查对象是否相等-如果两个不同的对象具有相同的字符串转换,则它们将彼此覆盖。 鉴于此-在JavaScript中是否有任何有效的hashmap实现?(例如,第二个Google结果产生的实现对任何操作都是O(n)。其他各种结果

  • 问题内容: 我正在尝试从Swift的iTu​​nesU中的“开发适用于iPhone和iPad的ios7应用程序”中复制斯坦福Matchismo游戏。 在第3讲幻灯片的第77页上,它显示了使用,这不是Swift上的选项。Swift文档示例显示了一个具有数组的示例,但是我不知道如何使Interface Builder将多个插座连接到同一个/ Array。 有人知道如何做到这一点吗? 我知道我可以创建1

  • 问题内容: 我正在开发Java程序,我确实需要能够以一定的频率和持续时间播放声音,类似于c#方法System.Beep,我知道如何在C#中使用它,但是我找不到用Java做到这一点的一种方法。是否有等效的方法或另一种方法? 问题答案: 我认为没有办法在便携式2 Java 中用“哔”声播放音乐1。您将需要使用我认为的API …除非找到可以为您简化事情的第三方库。 如果您想走这条路,那么此页面可能会给您

  • 问题内容: 据我所知,Java没有C#之类的东西。是否有其他Java库提供类似功能?( 反射反射 )有什么区别? 问题答案: 除了达林的出色答案(+1)外,ASM也值得一试。

  • 问题内容: 是否有斯威夫特的本地等效于? 假设我有两个包含键和值的数组,并想将它们放入字典中。在Objective-C中,我会这样做: 当然,我可以遍历两个数组的计数器,使用a 并逐步添加内容。但这似乎不是一个好的解决方案。同时使用和可能是更好的迭代方式。但是,这种方法意味着拥有可变的字典,而不是不可变的字典。 问题答案: 从 Swift 4开始, 您可以直接从键/值对序列创建字典: 这假定所有键