I have an EJB3 bean deployed as a web service in JBoss 4.2.2. In production, the server is behind the Apache server, which redirects requests to the Jboss server. This makes WSDL the wrong soap: address location. I managed to change the port and host name through the configuration file on the server \ default \ deploy \ jbossws.sar \ jbossws.beans \ META-INF, but I could not get it to switch the protocol to https.
The only way I found is to specify my own WSDL (via here ). By specifying https in the WSDL, JBoss takes it to be https. However, although this is normal in production, https is not used in QA (and the service that connects to it requires valid https, so self-signed certificates will not do). Therefore, although I can get a real certificate for QA (fake certification authorities will not do), I would prefer it to be http in QA. Is there a way to get JBoss to change the protocol or otherwise change the address so that it uses http in the soap address:
EDIT: It seems this question was recently raised in a database and was rejected. That would mean they have a job. But what is it?
Further EDIT: at the moment I know that the EJB3 interceptor does not work ( they are not activated at all ) and SOAPHandler do not intercept the call to get WSDL (checked - they all take). Therefore, the idea of the filter is intriguing, but it is far from clear where to put it.
URL shown by JBoss:
Endpoint Name jboss.ws:context=QuickBooks-QuickBooksWebService,endpoint=QBWSBeanEJB End Address https://127.0.0.1:8443/QuickBooks-QuickBooksWebService/QBWSBeanEJB?wsdl
(Note that when I use custom WSDL to force https, but JBoss is configured to overwrite it).
The version of JBossWS that I am using is what is connected with 4.2.2, which according to this is 2.0.1
EDIT: Regarding rewriting . . ( ) , . , https, bean CONFIDENTIAL https JBoss, https JBoss. , mod_jk ( AJP-, CONFIDENTIAL, WSDL , AJP? ), - https. , http AJP, : https, ( QA dev, http, https, ssl Apache). WSDL , HTTP, : https. ( , 443 8443), QA (dev , dev , m QA , , ).