Web Service Request Ignores Basic WSDL XML Element Limitations

I encountered some difficulties when trying to check an incoming message with soap for a service that I was running on JBoss AS (v. 5.1.0).

In my code, I explicitly set some fields, for example:

public class MyClass {
    @XmlElement(required=true, nillable=false)
    private List<myOtherObjects> myList;
}

This requirement is also reflected in the WSDL (note the absence of minOccurs = "0"):

<xs:element maxOccurs="unbounded" name="myList" type="tns:myOtherObjects" /> 

However, when I make a test message with soap with myList set to empty or empty, these restrictions are completely ignored, forcing me to check manually in the application logic on the service.

I did a few searches on the Internet and found that WebLogic does not enable the default check by default, although you can enable it by changing the weblogic-webservices.xml file. ( http://forums.oracle.com/forums/thread.jspa?threadID=783972&tstart=115 )

I am wondering if there is something similar that I have to do with JBoss AS in order to enable automatic checking before the soap message reaches the service. Any help would be greatly appreciated.

Oliver

+3
source share
1 answer

According to your type of port:

@SchemaValidation(handler = YourSchemaValidationErrorHandler.class)
@WebService
@Stateless
public class ......... {

}
0
source

Source: https://habr.com/ru/post/1738102/


All Articles