2012-12-19 16 views
7

मेरे पास एक अपाचे 2 HTTP सर्वर है यह सर्वर बाहरी नेटवर्क के लिए उपलब्ध है। मेरे webservices के लिए मेरे पास एक आंतरिक नेटवर्क में एक Jboss 4 है। मैंने डीएमजेड के साथ अपाचे पर वर्चुअलहोस्ट कॉन्फ़िगर किया है, इसलिए मैं बाहरी होस्टों से http://externalserver/services/SomeService?wsdl तक सेवाओं तक पहुंच सकता हूं, और जब अनुरोध/सेवाओं/* के साथ अनुरोध किए जाने वाले अनुरोध मैं अनुरोध को http://internalserver/services/SomeService?wsdl पर प्रॉक्सीपास द्वारा रीडायरेक्ट कर रहा हूं।एक्सिस बदलें साबुन: पता

यह इंट्रानेट पर काम कर रहा है, लेकिन जब मैं बाहरी होस्ट से अपनी webservice का उपभोग करने का प्रयास करता हूं, तो मेरा wsdl आंतरिक होस्ट को संदर्भित करता है। मेरे पास ऐसा कुछ है:

<service name="SomeServiceService"> 
    <port binding="tns:SomeServiceBinding" name="SomeServicePort"> 
     <soap:address location="http://internalserver/services/SomeService"/> 
    </port> 
</service> 

मुझे अपने जेनरेट किए गए wsdl में स्थान विशेषता बदलने की ज़रूरत है, मैं इसे कैसे कर सकता हूं?

अग्रिम धन्यवाद।

संपादित:

मैं मेजबान और बंदरगाह मैं jboss-beans.xml संपादित बदल सकते हैं, अब मैं कुछ इस तरह है:

<property name="webServiceHost">${jboss.bind.address}</property> 
<property name="modifySOAPAddress">true</property> 
<property name="webServiceSecurePort">8443</property> 
<property name="webServicePort">8080</property> 

लेकिन इस प्रोटोकॉल में परिवर्तन नहीं करते, मैं http://myapp/Service?wsdl या https://myapp/Service?wsdl पर कॉल कर सकते हैं लेकिन दोनों जोड़ों में http है, मुझे इसे https में बदलने की आवश्यकता है।

उत्तर

1

this post के अनुसार आप के चारों ओर एक काम के रूप में "https://REPLACE-ME की तरह कुछ करने के लिए soap:address सेट करें, या लागू CONFIDENTIAL परिवहन गारंटी (जो आपके इंट्रानेट सेवाएं बाधित कर सकते हैं, जब तक आप यह भी एक https सक्षम सर्वर में यह तैनात या soap:address मैन्युअल की जगह) कर सकते हैं।

संबंधित मुद्दे