Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JAX-WS删除换行符_Java_Web Services_Jax Ws_Wss4j - Fatal编程技术网

Java JAX-WS删除换行符

Java JAX-WS删除换行符,java,web-services,jax-ws,wss4j,Java,Web Services,Jax Ws,Wss4j,我遇到了一个JAX-WS客户机的问题,该客户机试图调用安全服务。 我必须使用X509证书对邮件进行签名,我使用WSS4J进行签名 使用自定义处理程序,我将签名的消息打印到文件中,一切看起来都很好。由于消息签名中有两个换行符,消息分为三行。 如果我在SoapUI中复制粘贴该消息并将其发送到服务器,则一切正常 但是如果我直接从客户机向服务器发送消息,我会得到一个SOAPFault,它说我没有一个好的安全头 我做了一些额外的测试,比如使用SoapUI设置一个模拟服务,当我从我的客户机收到消息时,一切都

我遇到了一个JAX-WS客户机的问题,该客户机试图调用安全服务。 我必须使用X509证书对邮件进行签名,我使用WSS4J进行签名

使用自定义处理程序,我将签名的消息打印到文件中,一切看起来都很好。由于消息签名中有两个换行符,消息分为三行。 如果我在SoapUI中复制粘贴该消息并将其发送到服务器,则一切正常

但是如果我直接从客户机向服务器发送消息,我会得到一个SOAPFault,它说我没有一个好的安全头

我做了一些额外的测试,比如使用SoapUI设置一个模拟服务,当我从我的客户机收到消息时,一切都在一行中。因此,签名中的换行符已被删除,因此消息的签名不再正确

有人知道我该如何应对吗


提前感谢。

看起来您使用的是wss4j,请查看-部分的
签名验证问题和错误

我没有wsdd文件,因此我可以通过编程方式设置此选项吗?我认为您不需要配置wss4j,所发生的是,它所标记的XML与实际获取的XML不同;看起来您有两个不同配置的XML封送器。这或代理是不透明的。我帮不了你更多,我对XML加密没有太多经验。