วันจันทร์ที่ 9 เมษายน พ.ศ. 2550

วิธีตรวจสอบ Connection WSDL

วิธีตรวจสอบ Connection WSDL
1. ให้เช็คก่อนว่า Firewall เปิดหรือยัง สามารถติดต่อไปถึงเครื่อง Server ได้หรือเปล่า โดย


#telnet [IP Address] [Port]

ถ้าไม่มีการ Time Out ก็แสดงว่าสามารถ ติดต่อถึงเครื่อง Server นั้นได้แล้ว
ถ้า Time Out ให้ขอเปิด Firewall จากเครื่องที่เราเทส ไปยังเครื่อง Server

2. ตรวจสอบว่าต้องวิ่งผ่าน https หรือเปล่า ถ้าวิ่งผ่านให้ทำการ Trust Certificate ซะก่อนโดย ทำที่ Server (ไม่ใช่ที่ Application หรือ ear file เด็ดขาด)


Example Config SSL บน Aplication ซึ่งไม่ควรใช้
System.setProperty("javax.net.ssl.trustStore", trustStoreFile);
System.setProperty("javax.net.ssl.trustStorePassword", trustStorePwd);
System.setProperty("javax.net.ssl.keyStore", keyStoreFile);
System.setProperty("javax.net.ssl.keyStorePassword", keyStorePwd);


3. Test WSDL โดย Test จาก คลิกขวาจากไฟลล์ WSDL แล้วเลือก Web Services à Test with Web Services Explorer


4. หลังจาก Test ผ่านข้อ 3 แล้วให้ทำการ Test โดยการ Generate Stub Call ไปเรียก Web Services (เขียนเรียกจาก jsp) โดยเลือก WSDL ไฟลล์ แล้วคลิกขวาเลือก Web Services à Generate Java bean skeleton แล้วก็ Next จนจบ


Example วิธีการเรียกจากการ Generation เอง (เรียกผ่าน Proxy File)
UMarket_PortType service = new UMarket_PortTypeProxy();
StandardBizRequest request = new StandardBizRequest();
StandardBizResponse response = service.activate(request);


5. ถ้าไม่สามารถเรียก ข้อ 4 ได้ (Exception จะประมาณว่า Exception BeanDeSerializable) อาจจะเป็นเพราะเราไปเรียก Web Service กันคนละ Server ให้ทำการขอทางด้านที่ให้ Web Services มา Generate Sub Call มาเป็น Jar File ให้ แล้วลองเรียก ผ่านอีกทีนึง (อาจจะต้องใช้ axis.jar จากทางนั้นด้วยเพราะบางทีใน Websphere จะเป็น version เก่า)


Example ในการเรียก
PctVoiceFaxServiceSoapBindingStub stub = null;
VoiceFaxServiceServiceLocator locator = new VoiceFaxServiceServiceLocator();
VoiceFaxService faxservice = locator.getPctVoiceFaxService(new java.net.URL(faxURL));
stub =(PctVoiceFaxServiceSoapBindingStub)faxservice;


หมายเหตูในกรณีที่หาเมนูไม่เจอให้เพิ่มเมนูได้ที่
1. Window --> Preferences
2. ไปที Workbence --> Capabilities
3. ให้ไปติ๊กทั้งหมดใน Web Service Developer
4. หลังจากนั้นคลิกขวาแล้วจะมีขึ้นมา