يؤدي الاتصال بخدمة WebService عبر HTTPS إلى حدوث خطأ في تخصيص ملف تعريف SCL

StackOverflow https://stackoverflow.com/questions/1739897

سؤال

أحاول استخدام فئات Jax-WS التي تم إنشاؤها (تم إنشاؤها باستخدام WSimport) للاتصال بحساب ويب عبر اتصال HTTPS من داخل مكون Java في خادم التطبيق سايبيس إي سيرفر 5.3.أحصل على استثناء في سجل Easerver مع ما يلي كسبب أساسي (لقد قمت بإزالة عنوان URL الخاص بـ WebService).

2009-11-15 18:39:58,338: ALL [Thread-19] - Caused by: 
java.io.IOException: https://www.<my website url>.com:443: SCL profile 
allocation
2009-11-15 18:39:58,338: ALL [Thread-19] -  at 
com.sybase.jaguar.net.HttpsURLConnection.getInputStream(HttpsURLConnection.java:521)
2009-11-15 18:39:58,338: ALL [Thread-19] -  at 
java.net.URL.openStream(Unknown Source)
2009-11-15 18:39:58,338: ALL [Thread-19] -  at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:804)
2009-11-15 18:39:58,338: ALL [Thread-19] -  at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:262)
2009-11-15 18:39:58,338: ALL [Thread-19] -  at 
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:129)
2009-11-15 18:39:58,338: ALL [Thread-19] -  ... 18 more

أنا متأكد من أن هذا لأنني بحاجة إلى إعداد Easerver لقبول شهادة SSL لهذا الموقع.يتم إنشاء رمز الاتصال نفسه بواسطة Jax-WS ، لذا لا أقوم بإنشاء الاتصال بنفسي بالفعل.يحدث في الفصول التي تم إنشاؤها.

أي أفكار حول كيفية تكوين EAServer بشكل صحيحcom.sybase.jaguar.net.HttpsURLConnection.getInputStream هل سيقوم بنجاح بإنشاء اتصال HTTPS بنقطة نهاية خدمة الويب؟

هل كانت مفيدة؟

المحلول

لقد عملت مع دعم Sybase لحل هذه المشكلة.لقد تضمن تحديث EAServer لاستخدام موفر أمان Sun بدلاً من موفر Sybase.داخل Jaguar.props قمنا بتحديث خيارات JVM لتكون:

com.sybase.jaguar.server.jvm.options=-Djava.protocol.handler.pkgs=sun.security.provider.Sun|com.sun.net.ssl.internal.ssl

يتيح ذلك له استخدام مزود أمان Sun وتوقفت عن الحصول علىSCL profile allocation رسالة.

بعد القيام بذلك ، بدأت في الحصول على nullpointerexceptions من فئات Jax-WS في السجل (الذي أكدت أنه كان مرتبطًا بتكوين Jax-WS للاستخدام داخل Easerver ، لا علاقة له بخدمة الويب الخاصة بـ SSL).

اضطررت إلى إضافة جرة عصيدة WebService التي تم إنشاؤها (التي قمت بإنشائها باستخدام Wsimport) إلى خاصية jaguar.propscom.sybase.jaguar.server.java.classes

لقد أضفت أيضًا هذه الجرة التي تم إنشاؤها ومكتبات وقت تشغيل Jax-WS إلى خصائص jaguar.props 2com.sybase.jaguar.server.jvm.bootclasspath.jars وcom.sybase.jaguar.server.jvm.classpath.jars

ثم قمت بنسخ مكتبات وقت تشغيل Jax-WS وجرة عصيدة WebService التي تم إنشاؤها إلى C:\Sybase\EAServer\java\lib الدليل وكل شيء بدأ العمل مثل البطل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top