小编hee*_*oir的帖子

14
推荐指数
2
解决办法
4526
查看次数

Jackson Java到JSON对象映射器修改了字段的名称

使用Jackson将Java对象转换为JSON

ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
jsonMessage = mapper.writeValueAsString(object);
Run Code Online (Sandbox Code Playgroud)

结果是字段"参与者"(它是对象实例的一部分)

participants    Arrays$ArrayList<E> 
Run Code Online (Sandbox Code Playgroud)

被重命名为"participantList"

participantsList":[{"userId":"c1f9c"}]
Run Code Online (Sandbox Code Playgroud)

即"列表"附加到字段名称.我浏览了杰克逊的文档,但没有找到防止这种情况发生的方法.这可能吗?在独立项目中测试上述代码不会导致相同的结果(即不进行重命名).为什么杰克逊表现得像这样?不幸的是,对象是第三方,我无法改变它.

使用Jackson版本2.3.3(使用2.9.0验证相同的行为).

java json jackson objectmapper

8
推荐指数
1
解决办法
654
查看次数

使用URLConnection进行摘要式身份验证

我正在实施单点登录功能,以使用摘要式身份验证自动登录到附属的https网站.目前我的代码是

URL url = new URL(protocol, ip, port, path);
URLConnection connection = url.openConnection(Proxy.NO_PROXY);
connection.connect();

if (connection != null && connection.getHeaderFields() != null) {
    if (connection.getHeaderFields().get(AUTHENTICATE_RESPONSE_HEADER) != null) {
        Map<String, String> authenticateParameters = identifyAuthentication(connection);

        String ha1 = calculateMD5(username + ":" + authenticateParameters.get("realm") + ":" + password);
        String ha2 = calculateMD5("GET" + ":" + path);
        String response = calculateMD5(ha1 + ":" + 
            authenticateParameters.get("nonce") + ":" +
            "00000001" + ":" +
            authenticateParameters.get("qop") + ":" +
            ha2);

            String authorizationRequest = authenticateParameters.get("challenge") + " " …
Run Code Online (Sandbox Code Playgroud)

java urlconnection digest-authentication

1
推荐指数
1
解决办法
5886
查看次数

OSGI:只有在外部存在时才能导入捆绑,否则使用本地缩减版本?

我面临的问题是,应用程序正在由第三方维护的OSGi容器上部署.

我的捆绑包中有一些功能可以导入外部包,这些包可能可用,也可能不可用.对于捆绑包不可用的情况,我的捆绑包中存在客户端捆绑包(以帮助避免ClassNotFound异常).在另一种情况下,当存在捆绑包时,应该导入包.

这有可能吗?

提前致谢.

osgi

1
推荐指数
1
解决办法
645
查看次数

JavaScript返回拒绝访问

我正在遇到一个场景,在执行javascript时,我会随机获得"拒绝访问".它不可重复,发生在我的应用程序的随机位置.没有迹象表明它在日志中造成了什么,我真的对此感到茫然.它似乎只是UI问题.但是,没有理由它应该出现,因为我没有任何这样的权限检查可以被触发.

提前致谢

javascript access-denied

0
推荐指数
1
解决办法
1093
查看次数