비동기식 BPEL 프로세스가 있는데 Java EE 웹 애플리케이션에서 호출하려고합니다. 어떻게해야합니까? Oracle SOA-Suite 11g PS3을 사용하고 있습니다.비동기 BPEL 프로세스를 호출하는 방법은 무엇입니까?
0
A
답변
0
비동기 SOAP/HTTP 송신자는 기본적으로 동기 SOAP/HTTP 클라이언트와 동일합니다. 단지 응답을 버립니다. 수신자가 메시지를 이해했는지 확인하려면 응답의 HTTP 상태 만 확인하십시오.
비동기 수신기는 기본적으로 요청의 "ReplyTo/Adress"필드에서 보낸 주소를 수신하는 SOAP/HTTP 서버입니다. 메시지를 수신 한 후 "200"상태 코드와 함께 빈 응답을 보냅니다.
보내고받은 메시지는 WS-Addressing SOAP 헤더 필드 인 "MessageID"(요청)와 "RelatesTo"(응답)를 사용하여 상관됩니다.
"최첨단 기술"솔루션에 만족하면 Asynch SOAP 요청을 HTTP를 통한 XML처럼 보내기/받기가 가능합니다. 다음 HTTP 요청은 BPEL 프로세스 "AsynchDummy"에 의해 비동기 요청으로 인식됩니다.
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" env:encodingStyle="">
<env:Header>
<ReplyTo xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing">
<Address>http://localhost:3333/my/j2ee/servlet</Address>
<PortType xmlns:ptns="http://xmlns.oracle.com/AsynchDummy">ptns:AsynchDummyCallback</PortType>
<ServiceName xmlns:snns="http://xmlns.oracle.com/AsynchDummy">snns:AsynchDummyCallbackService</ServiceName>
</ReplyTo>
<MessageID xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing" ans1:rootId="610005" xmlns:ans1="http://schemas.oracle.com/bpel" ans1:parentId="160005" ans1:priority="0">ABC123</MessageID>
</env:Header>
<env:Body>
<AsynchDummyProcessRequest xmlns="http://xmlns.oracle.com/AsynchDummy">
<input>this is the request</input>
</AsynchDummyProcessRequest>
</env:Body>
</env:Envelope>
이 에의 SOAPAction HTTP 헤더를 설정하는 것을 잊지 마세요 (인용 부호 포함) "시작"AsynchDummy은 JDeveloper를 생성 기본 비동기식 BPEL 프로세스입니다.
<?xml version="1.0" encoding="UTF-8"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:add="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<add:RelatesTo>ABC123</add:RelatesTo>
<add:MessageID ans1:rootId="" ans1:parentId="" ans1:priority="0" xmlns:ans1="http://schemas.oracle.com/bpel">ABC456</add:MessageID>
</soap-env:Header>
<soap-env:Body>
<AsynchDummyProcessResponse xmlns="http://xmlns.oracle.com/AsynchDummy">
<result>this is the result</result>
</AsynchDummyProcessResponse>
</soap-env:Body>
</soap-env:Envelope>
:
당신은 BPEL 프로세스의 콜백 클라이언트 단계에서 비슷한 메시지를 기대할 수 있습니다
관련 문제
- 1. 비동기 프로세스를 시작하는 방법은 무엇입니까?
- 2. BPEL 비동기 웹 서비스의 샘플은 무엇입니까?
- 3. 파이썬에서 프로세스를 호출하는 가장 빠른 방법은 무엇입니까?
- 4. django/wsgi 내에서 bash 프로세스를 호출하는 방법은 무엇입니까?
- 5. 모든 비동기 프로세스를 죽이는 방법
- 6. DLL에서 백그라운드 비동기 프로세스를 실행하십시오.
- 7. 동시에 비동기 메서드를 두 번 호출하는 방법은 무엇입니까?
- 8. ASP.NET 응용 프로그램에서 비동기 적으로 웹 서비스를 호출하는 방법은 무엇입니까?
- 9. 클래식 ASP에서 ASMX webservice를 비동기 적으로 호출하는 방법은 무엇입니까?
- 10. 비동기 방식으로 정상적인 메서드를 호출하는 가장 좋은 방법은 무엇입니까?
- 11. 프로세스를 예약하는 방법은 무엇입니까?
- 12. BPEL 프로세스에서 여러 입력 변수를 수신하는 방법은 무엇입니까?
- 13. BPEL 프로세스 배포 시간
- 14. C에서 백그라운드로 프로세스를 exec()하는 방법은 무엇입니까?
- 15. BPEL 애드온
- 16. OpenESB의 Webservice에서 BPEL 호출
- 17. RestFul 웹 서비스를 비동기식으로 호출하는 방법은 무엇입니까?
- 18. Oracle : BPEL-> Java Callout-> BPEL : EM에서 동일한 호출 트리에 속하게하는 방법은 무엇입니까?
- 19. 보기에서보기를 호출하는 방법은 무엇입니까?
- 20. OnUtteranceCompleted를 호출하는 방법은 무엇입니까?
- 21. BPEL 및 Java 웹 서비스
- 22. 이 프로세스를 자동화하는 방법은 무엇입니까?
- 23. C# 프로세스를 죽이는 방법은 무엇입니까?
- 24. MacOS에서 프로세스를 죽이는 방법은 무엇입니까?
- 25. 비동기식 프로세스를 시작한 클래스의 비동기 청취
- 26. BPEL 오류를 처리하는 방법
- 27. Java에서 열린 프로세스를 정리하는 방법은 무엇입니까?
- 28. 문제점 : BPEL Array 채우기
- 29. C# : 외부 프로세스를 호출하는 디렉터리를 순환하는 방법
- 30. 이름이나 파이썬에서 태그로 프로세스를 호출하는 방법