Description
I'm using the Element API to construct a Description from the ground up, with some problems in calling toString() on uninitialized *Impl objects.
WSDLFactory factory = WSDLFactory.newInstance();
DescriptionElement descElem1 = factory.newDescription();
ServiceElement svcElem1 = descElem1.addServiceElement();
assertNotNull(svcElem1.toString());
gives:
java.lang.IllegalArgumentException
at org.apache.woden.wsdl20.fragids.ServicePart.<init>(ServicePart.java:40)
at org.apache.woden.internal.wsdl20.ServiceImpl.getFragmentIdentifier(ServiceImpl.java:227)
at org.apache.woden.internal.wsdl20.WSDLComponentImpl.toString(WSDLComponentImpl.java:108)
ServicePart ctor actually throws a new IllegalArgumentException if passed a null so that's WAD. However, ServiceImpl.toString() should be friendlier.
Then there is a problem with ElementImpl.toString():
WSDLFactory factory = WSDLFactory.newInstance();
DescriptionElement descElem1 = factory.newDescription();
ServiceElement svcElem1 = descElem1.addServiceElement();
EndpointElement endPtElem1 = svcElem1.addEndpointElement();
assertNotNull(endPtElem1.toString());
gives:
java.lang.NullPointerException
at org.apache.woden.internal.wsdl20.EndpointImpl.getFragmentIdentifier(EndpointImpl.java:140)
at org.apache.woden.internal.wsdl20.WSDLComponentImpl.toString(WSDLComponentImpl.java:108)