我想连接到SSL连接中的Web服务。我连接到它并获得Service
和Port
但是当我发送请求时,它只返回null
。
我在网上搜索但我无法理解问题是什么。可能是因为它是SSL,我需要将它作为Http连接连接起来,是真的吗?
我使用自动代码生成器,它们也返回null
,WireShark说SSL包正确传输但我无法从这些包中读取SOAP,因为它们是SSL。
我使用一些应用程序和工具测试Web服务,并从中获得正确的答案。
问题:
null
值是否可能是因为SSL连接?null
返回?这是我的Java代码:
public class WS_TheServeice
{
private static QName qname;
private static URL url;
private static Service service;
private static ImplementationServicePortType sender;
static
{
qname = new QName("http://wservice.com/", "ImplementationService");
try
{
url = new URL("https://to-service?wsdl");
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
service = Service.create(url, qname);
sender = service.getPort(ImplementationServicePortType.class);
}
public static boolean PayToAcceptor(int AcceptorID, int Kipa) throws Exception
{
getUserInfo req = new getUserInfo();
req.zpID = AcceptorID;
req.kipa = Kipa;
getUserInfoResponse user_info = new getUserInfoResponse();//user_info is not NULL here
user_info = sender.getUserInfo(req);//But web server makes it NULL
if (user_info!=null) //// ---- HERE, IT Always return NULL
{
System.out.println("YouWon");
return true;
}
else
{
System.out.println("YouLoose");
return false;
}
}
public static void main(String Args[]) throws Exception
{
PayToAcceptor(12345, 1);
}
}
感谢。