spyhunter99 [https://community.jboss.org/people/spyhunter99] created the 
discussion

"Re: JBoss WS temp file problem"

To view the discussion, visit: https://community.jboss.org/message/716260#716260

--------------------------------------------------------------
Here's what I do. This example comes from a WSN publisher I'm working on.

For the record, I prefer the Microsoft approach for building web 
services/clients. Read the wsdl at development time only. Most java stacks read 
the wsdl at runtime which makes things challenging at times.

Long story short, put a copy of the wsdl and xsd files into the jar file that 
creates the proxy (not necessarily the jar containing the interface classes) in 
/META-INF

Modify the generated WebServiceClient class to have a static field representing 
the QName that defines the service (from the wsdl). More than likely, the Qname 
is already in the class, it's just not a public field.
Example:
public static QName qname = new QName(" http://docs.oasis-open.org/wsn/brw-2 
http://docs.oasis-open.org/wsn/brw-2";, "NotificationService");


Modify the code that creates the client proxy object to load the wsdl from 
META-INF. Both are required if you need this code to work from with Sun's JDK 
and OpenJDK

              URL wsdl = 
Thread.currentThread().getContextClassLoader().getResource("META-INF/brw-2impl.wsdl");
            if (wsdl == null) {
                wsdl = 
Thread.currentThread().getContextClassLoader().getResource("/META-INF/brw-2impl.wsdl");
            }
            if (wsdl == null) {
                ok = false;
                log.log(Level.FATAL, "Unable to obtain a URL for the local 
wsdl, publication is not possible");
            }
            org.oasis_open.docs.wsn.brw_2.NotificationService ns = new 
NotificationService(wsdl, NotificationService.qname);
            NotificationBroker notificationPort = ns.getNotificationPort();


Insert the correct endpoint url here

            BindingProvider bp = (BindingProvider) notificationPort;
            Map<String, Object> context = bp.getRequestContext();
            context.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, brokerurl);


hope this helps
--------------------------------------------------------------

Reply to this message by going to Community
[https://community.jboss.org/message/716260#716260]

Start a new discussion in JBoss Web Services at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2044]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to