}
public Conduit getBackChannel(Message inMessage,
Message partialResponse,
EndpointReferenceType address) throws IOException {
Conduit backChannel = null;
if (address == null) {
backChannel = new BackChannelConduit(address, inMessage);
} else {
if (partialResponse != null) {
// setup the outbound message to for 202 Accepted
partialResponse.put(Message.RESPONSE_CODE,
HttpURLConnection.HTTP_ACCEPTED);
backChannel = new BackChannelConduit(address, inMessage);
} else {
backChannel = conduitInitiator.getConduit(endpointInfo, address);
// ensure decoupled back channel input stream is closed
backChannel.setMessageObserver(new MessageObserver() {
public void onMessage(Message m) {
if (m.getContentFormats().contains(InputStream.class)) {
InputStream is = m.getContent(InputStream.class);
try {
is.close();