[
https://issues.jboss.org/browse/JBWS-3628?page=com.atlassian.jira.plugin....
]
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)