استدعاء أساليب الويب الخارجية باستخدام مشكلات BPEL + Apache Ode (استدعاء .Net asmx).

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

سؤال

معلومات مسبقة:أنا أتعلم كيفية استخدام تنسيق أساليب الويب (WM).لقد أكملت بنجاح الدروس المتعلقة بالتقييمات، واستدعاء أساليب الويب، وبعض المعالجة المتوازية في BPEL.أنا أستخدم Eclipse Indigo 3.7.1 مع مكونات BPEL الإضافية، وخادم Tomcat7 مع Apache Ode كقاعدة للتنسيق.وعلى الجانب الآخر، أحتاج إلى تعلم الاتصال بوحدات WM المؤمنة والمكتوبة على منصة Mono .Net.

وجود الآن:الآن أواجه مشكلة في الاتصال بأي طرق ويب.لقد صنعت:1) طريقة الويب التي تعمل بواسطة Mono .Net - تعمل، يمكن اختبارها باستخدام المتصفح (http://localhost:8081/hwws.asmx) وباستخدام أداة Eclipse "Web Services Explorer"، فهي تعمل بشكل جيد.2) BPEL الخاص بي الذي يستدعي فقط طريقة الويب .Net هذه من خلال منفذ SOAP.3) في محطة عمل أخرى قمت بإنشاء خدمة .Net باستخدام Visual Studio.هناك أخطاء أيضًا، إذا لزم الأمر، سأقوم بنشرها لاحقًا.

مشكلة: تظهر لي أخطاء عند الاستدعاء

شاشات:1) اختبار متصفح .NET WS HW (HelloWorld) http: // photo -hosting.winsoftmagic .com/ 1/ s4nbwdsqib.jpg 2) اختبار Eclipse لـ .net ws hw http://photo-hosting.winsoftmagic.com/1/zywnl2wtgu.jpg3) خطأ أحصل عليه http://photo-hosting.winsoftmagic.com/1/ltbexoxcdl.jpg

قائمة الأخطاء:

18:15:25,294 تحذير من الاستجابة لخطأ الخدمة الخارجية:خطأ = (unkown) SOAP: العميل لا يفلت من رسالة الصابون 18: 15: 25،376 خطأ في الفشل أثناء الاحتجاج:18:15:25,382 معلومات BpelRuntimeContextImpl ActivityRecovery:تسجيل النشاط 11 سبب الفشل:على القناة 21

ويعطي خطأ المهلة لاحقًا.لقد أمضيت أسبوعًا في حل هذه المشكلات بالفعل، وبحثت بكل الطرق التي يمكنني التفكير فيها.

تحرير 12.03.2012:

الآن نجح الاختبار باستخدام mono WS لسبب ما.لقد حاولت الاتصال بـ WS من الإنترنت وأعطاني نفس الخطأ الذي حدث في مكان العمل:

14:25:16,177 خطأ [استدعاء] فشل أثناء الاستدعاء:حدث خطأ أثناء إرسال الرسالة (mex={PartnerRoleMex#hqejbhcnphr747jefui9ic [PID {http://wsaspx.tns/inetWS-24] أثناء الاتصال بـ org.apache.ode.bpel.epr.WSAEndpoint@1e3a4c7.checkText(...) الحالة ASYNC} ):دفق الإدخال للرسالة الواردة فارغ.14:25:16,178 معلومات [BpelRuntimeContextImpl] استرداد النشاط:تسجيل النشاط 11 سبب الفشل:حدث خطأ أثناء إرسال الرسالة (mex={PartnerRoleMex#hqejbhcnphr747jefui9ic [PID {http://wsaspx.tns/inetWS-24] أثناء الاتصال بـ org.apache.ode.bpel.epr.WSAEndpoint@1e3a4c7.checkText(...) الحالة ASYNC} ):دفق الإدخال للرسالة الواردة فارغ.على القناة 21

وفي نفس الوقت تعمل هذه الخدمة من جميع نماذج الاختبار.

يحرر:16.03.2012

توقفت طريقتي الأحادية عن العمل كما بدأت دون أن أفهم.يعرض TcpMon-1.1.jar هذه الرسالة مرة أخرى:

POST /hwws.asmx HTTP/1.1
Content-Type: text/xml; charset=UTF-8
SOAPAction: "http://hwws.tps/HelloWorld"
User-Agent: Axis2
Host: localhost:8092
Transfer-Encoding: chunked <--- EDITED: REASON OF NOT WORKING ----

31c
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:8092/hwws.asmx</addr:To>
<addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing">http://hwws.tps/HelloWorld</addr:Action>
<addr:ReplyTo xmlns:addr="http://www.w3.org/2005/08/addressing"><addr:Address>http://www.w3.org/2005/08/addressing/anonymous</addr:Address></addr:ReplyTo>
<addr:MessageID xmlns:addr="http://www.w3.org/2005/08/addressing">uuid:hqejbhcnphr74k7fapcntd</addr:MessageID>
</soapenv:Header>
<soapenv:Body><HelloWorld xmlns="http://hwws.tps/">
<s0:st xmlns:s0="http://hwws.tps/">My test message</s0:st>
</HelloWorld></soapenv:Body></soapenv:Envelope>
0

HTTP/1.0 500 Internal Server Error
Date: Fri, 16 Mar 2012 08:01:50 GMT
Server: Mono.WebServer2/0.4.0.0 Unix
Connection: close
X-AspNet-Version: 4.0.30319
Content-Length: 366
Cache-Control: private
Content-Type: text/xml; charset=utf-8

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body><soap:Fault><faultcode>soap:Client</faultcode>
<faultstring>Could not deserialize Soap message</faultstring>
</soap:Fault></soap:Body></soap:Envelope>

في الواقع أحصل على واحد من 3 أخطاء:تعذر إلغاء التسلسل، دفق الإدخال للرسالة الواردة فارغ أو حتى الخطأ 411 بالأمس :) ملاحظة.كان لديه الخطأ الرابع مع عدم وجود مقبس متصل أيضًا، ولكن اختفت جميعها.

هدفي الرئيسي هو خدمات ssl+authorisation .net - وسأكون ممتنًا إذا كانت لديك أمثلة.شكرا جزيلا للجميع!إنه لمن دواعي سروري الحقيقي أن أرى مساعدتكم :)

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

المحلول

شكرًا للجميع، لقد أظهر اختبار جسم الصابون أنه جيد و كانت المشكلة في جزء الرؤوس الذي كان لديه بعض الغريب "مكتنزة" والأرقام قبل XML (طول نص XML) و0 بعد نهاية XML.أنا فقط قم بتعيين http.request.chunk=false والآن يعمل في جميع اختباراتي حتى الآن.لهذا الغرض تحميل Sample.endpoint من http://ode.apache.org/endpoint-configuration.html ، أعيدت تسميته باسم bpel (MonoCaller.bpel => MonoCaller.endpoint).لديها سلسلة مقسمة تم التعليق عليها بالفعل.وأضفنا أيضًا شيئًا مثل http.default-headers.authorization=الكود الأساسي <64b لـ "login:password" الذي تم إنشاؤه في أي برنامج تشفير> لغرض الترخيص وهو يعمل أيضًا الآن!:-]

نصائح أخرى

لقد حدث معي نفس الخطأ، المشكلة كانت في خدمة الويب نفسها، كان لدي مُنشئ فارغ بالإضافة إلى الطرق التي تسبب المشكلة، الحل هو لحذف المنشئ.

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