本文整理了Java中org.apache.cxf.message.Message.getContent()
方法的一些代码示例,展示了Message.getContent()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getContent()
方法的具体详情如下:
包路径:org.apache.cxf.message.Message
类名称:Message
方法名:getContent
[英]Retrieve the encapsulated content as a particular type. The content is available as a result type if the message is outbound. The content is available as a source type if message is inbound. If the content is not available as the specified type null is returned.
[中]以特定类型检索封装的内容。如果消息是出站的,则内容作为结果类型可用。如果消息是入站的,则该内容可作为源类型使用。如果内容不可用,则返回指定的类型null。
代码示例来源:origin: org.apache.cxf/cxf-rt-transports-http
/**
* Send an outbound message, assumed to contain all the name-value
* mappings of the corresponding input message (if any).
*
* @param message the message to be sent.
*/
public void prepare(Message message) throws IOException {
message.put(HTTP_RESPONSE, response);
OutputStream os = message.getContent(OutputStream.class);
if (os == null) {
message.setContent(OutputStream.class,
new WrappedOutputStream(message));
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-transports-http
@Override
public void handleFault(Message message) {
Exception ex = message.getContent(Exception.class);
if (ex instanceof AuthenticationException) {
HttpServletResponse resp = (HttpServletResponse)message.getExchange()
.getInMessage().get(AbstractHTTPDestination.HTTP_RESPONSE);
resp.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
resp.setHeader("WWW-Authenticate", authenticationType + " realm=\"" + realm + "\"");
resp.setContentType("text/plain");
try {
resp.getOutputStream().write(ex.getMessage().getBytes());
resp.getOutputStream().flush();
message.getInterceptorChain().setFaultObserver(null); //avoid return soap fault
message.getInterceptorChain().abort();
} catch (IOException e) {
// TODO
}
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
public void setMessage(SOAPMessage message) {
if (getWrappedMessage().getContent(Object.class) instanceof SOAPMessage) {
getWrappedMessage().setContent(Object.class, message);
} else {
getWrappedMessage().setContent(SOAPMessage.class, message);
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
public Source getPayload() {
Source source = null;
Service.Mode mode = msgContext.getWrappedMessage().getExchange().get(Service.Mode.class);
} else {
Message message = msgContext.getWrappedMessage();
source = message.getContent(Source.class);
if (source == null) {
SOAPMessage msg = message.getContent(SOAPMessage.class);
XMLStreamReader reader = null;
if (msg != null) {
DocumentFragment doc = DOMUtils.getEmptyDocument().createDocumentFragment();
W3CDOMStreamWriter writer = new W3CDOMStreamWriter(doc);
reader = message.getContent(XMLStreamReader.class);
message.setContent(XMLStreamReader.class, reader);
message.setContent(Source.class, source);
} else if (!(source instanceof DOMSource)) {
W3CDOMStreamWriter writer = new W3CDOMStreamWriter();
XMLStreamReader reader = message.getContent(XMLStreamReader.class);
if (reader == null) {
reader = StaxUtils.createXMLStreamReader(source);
message.setContent(XMLStreamReader.class, reader);
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
public void handleMessage(Message message) throws Fault {
W3CDOMStreamWriter domWriter = (W3CDOMStreamWriter)message.getContent(XMLStreamWriter.class);
XMLStreamWriter origWriter = (XMLStreamWriter)message
.get(LogicalHandlerOutInterceptor.ORIGINAL_WRITER);
XMLStreamReader reader = (XMLStreamReader)message.get("LogicalHandlerInterceptor.INREADER");
SOAPMessage origMessage = null;
if (reader != null) {
origMessage = message.getContent(SOAPMessage.class);
message.setContent(XMLStreamReader.class, reader);
message.removeContent(SOAPMessage.class);
} else if (domWriter.getCurrentFragment() != null) {
message.setContent(Source.class, source);
message.setContent(XMLStreamReader.class,
new W3CDOMStreamReader(domWriter.getCurrentFragment()));
} else if (domWriter.getDocument().getDocumentElement() != null) {
.getContent(XMLStreamReader.class));
responseMsg.put(InterceptorChain.STARTING_AT_INTERCEPTOR_ID,
LogicalHandlerInInterceptor.class.getName());
observer.onMessage(responseMsg);
reader = message.getContent(XMLStreamReader.class);
message.removeContent(XMLStreamReader.class);
if (reader != null) {
throw new Fault(e);
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
public void handleMessage(Message message) throws Fault {
if (binding.getHandlerChain().isEmpty()) {
return;
}
HandlerChainInvoker invoker = getInvoker(message);
if (invoker.getLogicalHandlers().isEmpty()) {
return;
}
XMLStreamWriter origWriter = message.getContent(XMLStreamWriter.class);
Node nd = message.getContent(Node.class);
SOAPMessage m = message.getContent(SOAPMessage.class);
Document document = null;
if (m != null) {
document = m.getSOAPPart();
} else if (nd != null) {
document = nd.getOwnerDocument();
} else {
document = DOMUtils.newDocument();
message.setContent(Node.class, document);
}
W3CDOMStreamWriter writer = new W3CDOMStreamWriter(document.createDocumentFragment());
// Replace stax writer with DomStreamWriter
message.setContent(XMLStreamWriter.class, writer);
message.put(ORIGINAL_WRITER, origWriter);
message.getInterceptorChain().add(ending);
}
@Override
代码示例来源:origin: apache/cxf
private org.apache.cxf.security.SecurityContext getInternalSecurityContext() {
org.apache.cxf.security.SecurityContext sc = m.getContent(org.apache.cxf.security.SecurityContext.class);
if (sc == null) {
sc = m.get(org.apache.cxf.security.SecurityContext.class);
}
return sc;
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
} else if (DataSource.class.isAssignableFrom(type)) {
MessageContentsList list = (MessageContentsList)message.getContent(List.class);
DataSource ds = (DataSource)list.get(0);
String ct = ds.getContentType();
if (ct.toLowerCase().contains("multipart/related")) {
Message msg = new MessageImpl();
msg.setExchange(message.getExchange());
msg.put(Message.CONTENT_TYPE, ct);
try {
msg.setContent(InputStream.class, ds.getInputStream());
AttachmentDeserializer deser = new AttachmentDeserializer(msg);
deser.initializeAttachments();
} catch (IOException ex) {
throw new Fault(ex);
final InputStream in = msg.getContent(InputStream.class);
final String ct2 = (String)msg.get(Message.CONTENT_TYPE);
list.set(0, new DataSource() {
OutputStream out = message.getContent(OutputStream.class);
message.put(Message.CONTENT_TYPE, ct);
try {
InputStream in = ds.getInputStream();
MessageContentsList list = (MessageContentsList)message.getContent(List.class);
Source ds = (Source)list.get(0);
if (!(ds instanceof DOMSource)) {
代码示例来源:origin: apache/servicemix
public void handleMessage(Message message) throws Fault {
try {
message.getContent(OutputStream.class).close();
} catch (IOException e) {
throw new Fault(e);
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-transports-http
@Override
public void close(Message msg) throws IOException {
super.close(msg);
if (msg.getExchange() == null) {
return;
}
Message m = msg.getExchange().getInMessage();
if (m == null) {
return;
}
InputStream is = m.getContent(InputStream.class);
if (is != null) {
try {
is.close();
m.removeContent(InputStream.class);
} catch (IOException ioex) {
//ignore
}
}
}
}
代码示例来源:origin: apache/cxf
public void handleMessage(Message message) throws Fault {
OutputStream out = message.getContent(OutputStream.class);
if (out != null) {
CountingOutputStream newOut = new CountingOutputStream(out);
message.setContent(OutputStream.class, newOut);
message.getExchange().put(CountingOutputStream.class, newOut);
}
}
}
代码示例来源:origin: apache/cxf
public void handleMessage(Message message) throws Fault {
Document doc = (Document)message.get(WSDLGetInterceptor.DOCUMENT_HOLDER);
if (doc == null) {
return;
}
message.remove(WSDLGetInterceptor.DOCUMENT_HOLDER);
XMLStreamWriter writer = message.getContent(XMLStreamWriter.class);
if (writer == null) {
return;
}
message.put(Message.CONTENT_TYPE, "text/xml");
try {
StaxUtils.writeDocument(doc, writer,
!MessageUtils.getContextualBoolean(message,
StaxOutInterceptor.FORCE_START_DOCUMENT,
false),
true);
} catch (XMLStreamException e) {
throw new Fault(e);
}
}
}
代码示例来源:origin: org.mule.services/mule-service-soap
private DispatchingRequest getDispatchingRequest(Message message) {
Exchange exchange = message.getExchange();
String action = (String) exchange.get(MULE_SOAP_ACTION);
Map<String, String> headers = new HashMap<>();
headers.put(SOAP_ACTION, action);
// It's important that content type is bundled with the headers
headers.put(CONTENT_TYPE, (String) message.get(CONTENT_TYPE));
headers.putAll((Map) exchange.get(MULE_TRANSPORT_HEADERS_KEY));
InputStream content = new ByteArrayInputStream(message.getContent(OutputStream.class).toString().getBytes());
return new DispatchingRequest(content, (String) exchange.get(MULE_WSC_ADDRESS), headers);
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-transports-http
inMessage.getExchange().put(Bus.class, bus);
inMessage.put(Message.DECOUPLED_CHANNEL_MESSAGE, Boolean.TRUE);
inMessage.put(Message.RESPONSE_CODE, HttpURLConnection.HTTP_OK);
InputStream in = inMessage.getContent(InputStream.class);
if (in != null) {
CachedOutputStream cos = new CachedOutputStream();
IOUtils.copy(in, cos);
inMessage.setContent(InputStream.class, cos.getInputStream());
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
private void handleAbort(Message message, W3CDOMStreamWriter writer) {
message.getInterceptorChain().abort();
if (!message.getExchange().isOneWay()) {
//server side inbound
Endpoint e = message.getExchange().getEndpoint();
Message responseMsg = new MessageImpl();
responseMsg.setExchange(message.getExchange());
responseMsg = e.getBinding().createMessage(responseMsg);
message.getExchange().setOutMessage(responseMsg);
XMLStreamReader reader = message.getContent(XMLStreamReader.class);
if (reader == null && writer != null) {
reader = StaxUtils.createXMLStreamReader(writer.getDocument());
}
InterceptorChain chain = OutgoingChainInterceptor
.getOutInterceptorChain(message.getExchange());
responseMsg.setInterceptorChain(chain);
responseMsg.put("LogicalHandlerInterceptor.INREADER", reader);
chain.doIntercept(responseMsg);
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
private void doFromSoapMessage(Message message, Object sm) {
SOAPMessage m = (SOAPMessage)sm;
MessageContentsList list = (MessageContentsList)message.getContent(List.class);
if (list == null) {
list = new MessageContentsList();
message.setContent(List.class, list);
}
Object o = m;
if (StreamSource.class.isAssignableFrom(type)) {
try {
try (CachedOutputStream out = new CachedOutputStream()) {
XMLStreamWriter xsw = StaxUtils.createXMLStreamWriter(out);
StaxUtils.copy(new DOMSource(m.getSOAPPart()), xsw);
xsw.close();
o = new StreamSource(out.getInputStream());
}
} catch (Exception e) {
throw new Fault(e);
}
} else if (SAXSource.class.isAssignableFrom(type)) {
o = new StaxSource(new W3CDOMStreamReader(m.getSOAPPart()));
} else if (Source.class.isAssignableFrom(type)) {
o = new DOMSource(m.getSOAPPart());
}
list.set(0, o);
}
代码示例来源:origin: apache/cxf
@Override
public void handleMessage(final Message message) throws Fault {
if (message.containsKey(WIRE_TAP_STARTED)) {
return;
}
message.put(WIRE_TAP_STARTED, Boolean.TRUE);
try {
InputStream is = message.getContent(InputStream.class);
if (is != null) {
handleInputStream(message, is);
} else {
Reader reader = message.getContent(Reader.class);
if (reader != null) {
handleReader(message, reader);
}
}
} catch (Exception e) {
throw new Fault(e);
}
}
代码示例来源:origin: stackoverflow.com
@Override
public void handleFault(Message message) {
FaultMode mode = message.get(FaultMode.class);
Exception exception = message.getContent(Exception.class);
if (exception != null && exception.getCause() != null) {
if (mode != FaultMode.CHECKED_APPLICATION_FAULT) {
if (exception.getCause() instanceof NotificationFailedException) {
message.put(FaultMode.class, FaultMode.CHECKED_APPLICATION_FAULT);
}
}
}
}
代码示例来源:origin: org.apache.cxf/cxf-rt-frontend-jaxws
Service.Mode mode = (Service.Mode)msgContext.getWrappedMessage()
.getContextualProperty(Service.Mode.class.getName());
SOAPMessage m = message.getContent(SOAPMessage.class);
if (m != null && !MessageUtils.isOutbound(message)) {
try {
message.setContent(XMLStreamReader.class, r);
} catch (Exception e) {
throw new Fault(e);
s = new DOMSource(msg.getSOAPPart());
} catch (Exception e) {
throw new Fault(e);
} else if (message instanceof XMLMessage && message.getContent(DataSource.class) != null) {
throw new Fault(
new org.apache.cxf.common.i18n.Message(
"GETPAYLOAD_OF_DATASOURCE_NOT_VALID_XMLHTTPBINDING",
msgContext.getWrappedMessage().setContent(XMLStreamReader.class, reader);
msgContext.getWrappedMessage().setContent(Source.class, s);
代码示例来源:origin: apache/cxf
public void handleMessage(Message message) {
AttachmentSerializer ser = message.getContent(AttachmentSerializer.class);
if (ser != null) {
try {
String cte = (String)message.getContextualProperty(Message.CONTENT_TRANSFER_ENCODING);
if (cte != null) {
ser.setContentTransferEncoding(cte);
}
ser.writeAttachments();
} catch (IOException e) {
throw new Fault(new org.apache.cxf.common.i18n.Message("WRITE_ATTACHMENTS", BUNDLE), e);
}
}
}
内容来源于网络,如有侵权,请联系作者删除!