When using find_service to locate all services using a
given TModel, i.e.:
ServiceList serviceList =
proxy.getProxy().find_service(null, null, null,
tModelBag, null, 5);
Where tModelBag is:
TModelBag tModelBag = new TModelBag();
tModelBag.add(new
TModelKey("uuid:AF6C2B90-02CE-11D8-AB90-D846D1751D29") );
Works a treat on the IBM UDDI Test Registry (returning
a list of services that are using the given TModel);
but, when run with JUDDI, I get a SOAP error:
java.lang.NullPointerException
at org.uddi4j.UDDIElement.<init>(UDDIElement.java:37)
at
org.uddi4j.response.ServiceList.<init>(ServiceList.java:92)
at
org.uddi4j.client.UDDIProxy.find_service(UDDIProxy.java:707)
at
rave.uddi.Services.getMatchingServices(Services.java:65)
at
rave.ogsa.data.Client.TestClient.main(TestClient.java:83)
Is JUDDI assuming one of the arguments to be non-null?
I think perhaps the name of the service?
Logged In: NO
你可以看看你的KeyReference实例是否构造有问题,注意其中tmodelkey的值应该是最后一个参数。这样便不会有错了。试试看吧