2012-09-25 15 views
23

मैं जेएक्स-डब्ल्यूएस को एक उच्च अवलोकन प्रदान कर रहा हूं और sun-jaxws.xml (com.sun.xml.ws.transport.http.servlet.WSServletContextListener और com.sun.xml.ws.transport.http.servlet.WSServlet के साथ) के कुछ संदर्भों को देखा है।sun-jaxws.xml - इसकी आवश्यकता कब होती है और कब नहीं?

इसकी क्या आवश्यकता है? (मुझे लगता है कि JSR 109 सर्वर ?!)

+0

कहाँ वास्तव में आप उन संदर्भों को पता चला? – Puce

+0

@Puce: उदाहरण के लिए यहां: http://www.mkyong.com/webservices/jax-ws/deploy-jax-ws-web-services-on-tomcat/, और कुछ अन्य स्थानों में – JohnDoDo

+0

संबंधित: http: //stackoverflow.com/questions/16537821/jax-ws-web-service-on-tomcat-without-sun-jaxws-xml –

उत्तर

32

sun-jaxws.xml एक मालिकाना तैनाती वर्णनकर्ता जब वेब सेवाओं के लिए एक गैर जावा EE5 सर्वलेट रवि के संदर्भ कार्यान्वयन का उपयोग कर कंटेनर पर एक मानक WAR संग्रह के रूप में तैनात किया गया है की जरूरत है।

सूर्य का आरआई WSServletContextListener का उपयोग सर्वलेट संदर्भ घटनाओं के लिए श्रोता और WSServlet प्रेषक सर्वलेट के रूप में करता है; जिनमें से दोनों को web.xml में घोषित किया जाना है। sun-jaxws.xml फ़ाइल को WSServlet के लिए वेब सेवा अंत बिंदुओं को परिभाषित करने के लिए आवश्यक है ताकि यह पता चल सके कि सेवा अनुरोध किस अंतराल को प्रेषित किया जाना चाहिए।

इस तरह, वेब सेवाओं को किसी भी JAX-WS आरआई सक्षम सर्वलेट कंटेनर में चलाया जा सकता है, हालांकि वे पोर्टेबल नहीं होंगे।

जावा ईई 5 + अनुरूप आवेदन Glassfish, the reference implementation, के रूप में सर्वर JSR 109 (Web services 1.2/1.3) और JSR 224 (JAX-WS 2.0/2.1/2.2) के अनुपालन और गैर मानक sun-jaxws.xml तैनाती वर्णनकर्ता आवश्यकता नहीं है।

अधिक जानकारी के लिए यहाँ देखें:

http://jax-ws.java.net/nonav/2.2.1/docs/UsersGuide.html#1.0_Introduction

http://www.ibm.com/developerworks/java/library/j-jws9/index.html

+1

उत्तर के लिए धन्यवाद। हालांकि एक सवाल, "गैर-जावा ईई 5 सर्वलेट कंटेनर" का क्या अर्थ है? सर्वलेट एपीआई का एक निश्चित संस्करण या क्या? – JohnDoDo

+1

मुझे यकीन नहीं है कि यह केवल सर्वलेट एपीआई संस्करण है जो अंतर बनाता है; हालांकि यह निश्चित रूप से महत्वपूर्ण है (उदा। एनोटेशन समर्थन)। "गैर-जे 2 ईई सर्वलेट कंटेनर" की मेरी समझ - इस संदर्भ की सीमा तक - यह है कि जेबीईई 5+ पर्यावरण जैसे जेबॉस एएस 7, जेएक्स-डब्ल्यूएस 2.0 समर्थन स्वचालित रूप से गारंटीकृत है, लेकिन यदि आपको वेब सेवाएं बनाना है अन्य वातावरण जैसे विरासत सर्वलेट कंटेनर, आप अभी भी नौकरी कर सकते हैं और यह एक विकल्प है। बेशक, आज, कुछ और अच्छे, यहां तक ​​कि बेहतर कार्यान्वयन उपलब्ध हैं (जैसे अपाचे सीएफ़एक्स) जिसे आप चुन सकते हैं। – RGO

+0

@ जॉन डोडो - यहां सर्वलेट कंटेनर और पूर्ण जावा ईई अनुप्रयोग सर्वर के बीच अंतर के बारे में एक स्पष्टीकरण है: http://stackoverflow.com/questions/17181292/java-ee-containers-vs-web-containers/17184620#17184620 –

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