[jbossws-issues] [JBoss JIRA] (JBWS-3628) Add property expansion capability to .wsdl files

R Searls (JIRA) issues at jboss.org
Wed Jun 18 12:19:24 EDT 2014


    [ https://issues.jboss.org/browse/JBWS-3628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12977491#comment-12977491 ] 

R Searls commented on JBWS-3628:
--------------------------------

CXF would need only a minor modification in order for us to register an custom
WSDLFactoryImpl through the bus for CXF's WSDLManager to reference.  Our WSDLFactoryImpl class would override the newWSDLReader method and return a custom WSDLReaderImpl class.

It would be most desirable to subclass com.ibm.wsdl.xml.WSDLReaderImpl and override 
select parsing methods, however is this not possible because the methods of interest 
are "protected".  I see two solutions. One, copy the contents of com.ibm.wsdl.xml.WSDLReaderImpl into our WSDLReaderImpl class and make the desired modifications to the protected methods.  Two, in our WSDLFactoryImpl override method  newDefinition() and return a custom impl of DefinitionImpl and in DefinitionImpl override methods like createService() and return a custom ServiceImpl class (and the like) that does our bidding.  This would allow com.ibm.wsdl.xml.WSDLReaderImpl to be used as is.

Because of the nature of what we are currently customizing I am more in favor of
option one.  This provides us full access to the wsdl contents with the smallest
number of classes that needs to be maintained.  Option two seems like over kill
and requires a larger number of custom classes to be maintained by us.

What are your thoughts?   


> Add property expansion capability to .wsdl files
> ------------------------------------------------
>
>                 Key: JBWS-3628
>                 URL: https://issues.jboss.org/browse/JBWS-3628
>             Project: JBoss Web Services
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>          Components: jbossws-cxf
>            Reporter: david.boeren
>            Assignee: R Searls
>            Priority: Minor
>             Fix For: jbossws-cxf-5.0
>
>         Attachments: JBWS-3628-tentative-patch-from-Rebecca.txt
>
>
> The customer is doing JMS-based webservices using the following declarations in their wsdl file (referred to using the wsdllocation annotation):
>     <soapjms:jndiConnectionFactoryName>myqueue</soapjms:jndiConnectionFactoryName> <soapjms:jndiInitialContextFactory>com.vendor.InitialContextFactory</soapjms:jndiInitialContextFactory>
> <soapjms:jndiURL>$MY_URL</soapjms:jndiURL>
> The $MY_URL is the url of the messaging server. Since property replacement does not work for wsdl files they need to manually modify this before deploying and package separate versions of their app for each environment.  If property expansion worked in the .wsdl this would no longer be necessary.



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)


More information about the jbossws-issues mailing list