本文整理汇总了Java中com.sun.xml.internal.ws.api.message.AddressingUtils.getAction方法的典型用法代码示例。如果您正苦于以下问题:Java AddressingUtils.getAction方法的具体用法?Java AddressingUtils.getAction怎么用?Java AddressingUtils.getAction使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.sun.xml.internal.ws.api.message.AddressingUtils
的用法示例。
在下文中一共展示了AddressingUtils.getAction方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isAddressingEngagedOrRequired
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
final boolean isAddressingEngagedOrRequired(Packet packet, WSBinding binding) {
if (AddressingVersion.isRequired(binding))
return true;
if (packet == null)
return false;
if (packet.getMessage() == null)
return false;
if (packet.getMessage().getHeaders() != null)
return false;
String action = AddressingUtils.getAction(
packet.getMessage().getHeaders(),
addressingVersion, soapVersion);
if (action == null)
return true;
return true;
}
示例2: validateAction
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
@Override
protected void validateAction(Packet packet) {
//There may not be a WSDL operation. There may not even be a WSDL.
//For instance this may be a RM CreateSequence message.
WSDLBoundOperation wbo = getWSDLBoundOperation(packet);
if (wbo == null) return;
String gotA = AddressingUtils.getAction(
packet.getMessage().getHeaders(),
addressingVersion, soapVersion);
if (gotA == null)
throw new WebServiceException(AddressingMessages.VALIDATION_CLIENT_NULL_ACTION());
String expected = helper.getOutputAction(packet);
if (expected != null && !gotA.equals(expected))
throw new ActionNotSupportedException(gotA);
}
示例3: checkMandatoryHeaders
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
@Override
protected void checkMandatoryHeaders(Packet packet, boolean foundAction, boolean foundTo, boolean foundReplyTo,
boolean foundFaultTo, boolean foundMessageID, boolean foundRelatesTo) {
super.checkMandatoryHeaders(packet,foundAction,foundTo,foundReplyTo,foundFaultTo,foundMessageID,foundRelatesTo);
// if no wsa:To header is found
if (!foundTo) {
throw new MissingAddressingHeaderException(addressingVersion.toTag,packet);
}
if (!validation.equals(MemberSubmissionAddressing.Validation.LAX)) {
// if it is not one-way, response must contain wsa:RelatesTo
// RelatesTo required as per
// Table 5-3 of http://www.w3.org/TR/2006/WD-ws-addr-wsdl-20060216/#wsdl11requestresponse
if (expectReply && (packet.getMessage() != null) && !foundRelatesTo) {
String action = AddressingUtils.getAction(packet.getMessage().getHeaders(), addressingVersion, soapVersion);
// Don't check for AddressingFaults as
// Faults for requests with duplicate MessageId will have no wsa:RelatesTo
if (!packet.getMessage().isFault() || !action.equals(addressingVersion.getDefaultFaultAction())) {
throw new MissingAddressingHeaderException(addressingVersion.relatesToTag,packet);
}
}
}
}
示例4: checkMandatoryHeaders
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
@Override
protected void checkMandatoryHeaders(Packet packet, boolean foundAction, boolean foundTo, boolean foundReplyTo,
boolean foundFaultTo, boolean foundMessageID, boolean foundRelatesTo) {
super.checkMandatoryHeaders(packet, foundAction, foundTo, foundReplyTo, foundFaultTo, foundMessageID, foundRelatesTo);
// if it is not one-way, response must contain wsa:RelatesTo
// RelatesTo required as per
// Table 5-3 of http://www.w3.org/TR/2006/WD-ws-addr-wsdl-20060216/#wsdl11requestresponse
if (expectReply && (packet.getMessage() != null) && !foundRelatesTo) {
String action = AddressingUtils.getAction(packet.getMessage().getHeaders(), addressingVersion, soapVersion);
// Don't check for AddressingFaults as
// Faults for requests with duplicate MessageId will have no wsa:RelatesTo
if (!packet.getMessage().isFault() || !action.equals(addressingVersion.getDefaultFaultAction())) {
throw new MissingAddressingHeaderException(addressingVersion.relatesToTag,packet);
}
}
}
示例5: dumpParam
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
private void dumpParam(T param, String method) {
if (param instanceof Packet) {
Packet message = (Packet)param;
String action;
String msgId;
if (LOGGER.isLoggable(Level.FINE)) {
AddressingVersion av = DispatchImpl.this.getBinding().getAddressingVersion();
SOAPVersion sv = DispatchImpl.this.getBinding().getSOAPVersion();
action =
av != null && message.getMessage() != null ?
AddressingUtils.getAction(message.getMessage().getHeaders(), av, sv) : null;
msgId =
av != null && message.getMessage() != null ?
AddressingUtils.getMessageID(message.getMessage().getHeaders(), av, sv) : null;
LOGGER.fine("In DispatchImpl." + method + " for message with action: " + action + " and msg ID: " + msgId + " msg: " + message.getMessage());
if (message.getMessage() == null) {
LOGGER.fine("Dispatching null message for action: " + action + " and msg ID: " + msgId);
}
}
}
}
示例6: dumpFiberContext
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
private void dumpFiberContext(String desc) {
if(isTraceEnabled()) {
String action = null;
String msgId = null;
if (packet != null) {
for (SOAPVersion sv: SOAPVersion.values()) {
for (AddressingVersion av: AddressingVersion.values()) {
action = packet.getMessage() != null ? AddressingUtils.getAction(packet.getMessage().getHeaders(), av, sv) : null;
msgId = packet.getMessage() != null ? AddressingUtils.getMessageID(packet.getMessage().getHeaders(), av, sv) : null;
if (action != null || msgId != null) {
break;
}
}
if (action != null || msgId != null) {
break;
}
}
}
String actionAndMsgDesc;
if (action == null && msgId == null) {
actionAndMsgDesc = "NO ACTION or MSG ID";
} else {
actionAndMsgDesc = "'" + action + "' and msgId '" + msgId + "'";
}
String tubeDesc;
if (next != null) {
tubeDesc = next.toString() + ".processRequest()";
} else {
tubeDesc = peekCont() + ".processResponse()";
}
LOGGER.log(Level.FINE, "{0} {1} with {2} and ''current'' tube {3} from thread {4} with Packet: {5}", new Object[]{getName(), desc, actionAndMsgDesc, tubeDesc, Thread.currentThread().getName(), packet != null ? packet.toShortString() : null});
}
}
示例7: validateSOAPAction
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
protected void validateSOAPAction(Packet packet) {
String gotA = AddressingUtils.getAction(
packet.getMessage().getHeaders(),
addressingVersion, soapVersion);
if (gotA == null)
throw new WebServiceException(AddressingMessages.VALIDATION_SERVER_NULL_ACTION());
if(packet.soapAction != null && !packet.soapAction.equals("\"\"") && !packet.soapAction.equals("\""+gotA+"\"")) {
throw new InvalidAddressingHeaderException(addressingVersion.actionTag, addressingVersion.actionMismatchTag);
}
}
示例8: validateAction
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
@Override
protected void validateAction(Packet packet) {
//There may not be a WSDL operation. There may not even be a WSDL.
//For instance this may be a RM CreateSequence message.
WSDLBoundOperation wsdlBoundOperation = getWSDLBoundOperation(packet);
if (wsdlBoundOperation == null) {
return;
}
String gotA = AddressingUtils.getAction(
packet.getMessage().getHeaders(),
addressingVersion, soapVersion);
if (gotA == null) {
throw new WebServiceException(AddressingMessages.VALIDATION_SERVER_NULL_ACTION());
}
String expected = helper.getInputAction(packet);
String soapAction = helper.getSOAPAction(packet);
if (helper.isInputActionDefault(packet) && (soapAction != null && !soapAction.equals(""))) {
expected = soapAction;
}
if (expected != null && !gotA.equals(expected)) {
throw new ActionNotSupportedException(gotA);
}
}
示例9: getWSDLOperationMapping
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
public WSDLOperationMapping getWSDLOperationMapping(Packet request) throws DispatchException {
MessageHeaders hl = request.getMessage().getHeaders();
String action = AddressingUtils.getAction(hl, av, binding.getSOAPVersion());
if (action == null)
// Addressing is not enagaged, return null to use other ways to dispatch.
return null;
Message message = request.getMessage();
QName payloadName;
String localPart = message.getPayloadLocalPart();
if (localPart == null) {
payloadName = EMPTY_PAYLOAD;
} else {
String nsUri = message.getPayloadNamespaceURI();
if (nsUri == null)
nsUri = EMPTY_PAYLOAD_NSURI;
payloadName = new QName(nsUri, localPart);
}
WSDLOperationMapping opMapping = uniqueOpSignatureMap.get(new ActionBasedOperationSignature(action, payloadName));
if (opMapping != null)
return opMapping;
//Seems like in Wstrust STS wsdls, the payload does not match what is specified in the wsdl leading to incorrect
// wsdl operation resolution. Use just wsa:Action to dispatch as a last resort.
//try just with wsa:Action
opMapping = actionMap.get(action);
if (opMapping != null)
return opMapping;
// invalid action header
Message result = Messages.create(action, av, binding.getSOAPVersion());
throw new DispatchException(result);
}
示例10: getFaultAction
import com.sun.xml.internal.ws.api.message.AddressingUtils; //导入方法依赖的package包/类
String getFaultAction(@Nullable WSDLBoundOperation wbo, Packet responsePacket) {
String action = AddressingUtils.getAction(responsePacket.getMessage().getHeaders(), addVer, soapVer);
if (action != null) {
return action;
}
action = addVer.getDefaultFaultAction();
if (wbo == null) {
return action;
}
try {
SOAPMessage sm = responsePacket.getMessage().copy().readAsSOAPMessage();
if (sm == null) {
return action;
}
if (sm.getSOAPBody() == null) {
return action;
}
if (sm.getSOAPBody().getFault() == null) {
return action;
}
Detail detail = sm.getSOAPBody().getFault().getDetail();
if (detail == null) {
return action;
}
String ns = detail.getFirstChild().getNamespaceURI();
String name = detail.getFirstChild().getLocalName();
WSDLOperation o = wbo.getOperation();
WSDLFault fault = o.getFault(new QName(ns, name));
if (fault == null) {
return action;
}
action = fault.getAction();
return action;
} catch (SOAPException e) {
throw new WebServiceException(e);
}
}