के साथ एक डब्ल्यूएस प्रकाशित करना मैंने न्यूनतम वेब सेवा बनाई और इसे javax.xml.ws.Endpoint का उपयोग करके प्रकाशित किया। यदि मैं http://localhost:1234/AddService?wsdl
पर WSDL प्राप्त करने का प्रयास करता हूं तो यह ठीक काम करता है।जैक्स-डब्ल्यूएस एंडपॉइंट
http://192.168.0.133:1234/AddService?wsdl
पर इसे प्राप्त करने का प्रयास करते हुए, मुझे कुछ भी प्राप्त नहीं होता है। यह पता localhost जैसा ही है।
क्या पता प्रदान किए बिना एक webservice प्रकाशित करने के लिए कोई posibiility है?
package test;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
@WebService
public class AddService {
@WebMethod
public int add(int a, int b){
return a+b;
}
public static void main(String[] args){
Endpoint.publish("http://localhost:1234/AddService", new AddService());
}
}
Endpoint.publish("http://192.168.0.133:1234/AddService", new AddService());
करने के लिए कोड बदलने मुझे आईपी पते पर लेकिन स्थानीय होस्ट पर नहीं wsdl हो जाता है।
क्या पोर्ट को परिभाषित करने की कोई संभावना नहीं है?
यह काम करता है। लोकलहोस्ट, 0.0.0.0 और 1 9 .168.0.133 मुझे wsdl मिल जाता है। लेकिन स्थानीयहोस्ट या अन्य आईपी पर प्रकाशित करते समय यह क्यों नहीं है। – daniel
यह सुनकर खुशी हुई कि यह काम करता है। localhost आईपी 127.0.0.1 है, और एंडपॉइंट.publish (जाहिर है) केवल प्रदान किए गए पते से बांधता है। 0.0.0.0 के साथ आप इसे आने वाले कनेक्शनों को किसी भी आईपी-एड्रेस (अपने कंप्यूटर से जुड़े) के लिए 'सुनो' करने के लिए कहते हैं। यह केवल एक विशिष्ट आईपी-एड्रेस से जुड़ने के लिए एक आसान सुविधा हो सकती है, उदा। यदि आप चाहते हैं कि आपकी सेवा केवल एक निश्चित सबनेट के लिए उपलब्ध हो ... – ivy
ग्रेट चाल। क्या यह आधिकारिक रूप से समर्थित है या सिर्फ एक आसान दुष्प्रभाव है? –