Package org.frankframework.pipes
Class WsdlXmlValidator
- All Implemented Interfaces:
HasSpecialDefaultValues
,HasPhysicalDestination
,HasTransactionAttribute
,IConfigurable
,IConfigurationAware
,IDualModeValidator
,IForwardTarget
,INamedObject
,IPipe
,IScopeProvider
,IValidator
,IWithParameters
,IXmlValidator
,EventThrowing
,HasStatistics
,SchemasProvider
,org.springframework.beans.factory.Aware
,org.springframework.beans.factory.InitializingBean
,org.springframework.context.ApplicationContextAware
XmlValidator that will read the XSD's to use from a WSDL. As it extends the
SoapValidator is will also add the SOAP envelope XSD.
- Author:
- Michiel Meeuwissen, Jaco de Groot
-
Nested Class Summary
Nested classes/interfaces inherited from class org.frankframework.pipes.XmlValidator
XmlValidator.ResponseValidatorWrapper
-
Field Summary
Fields inherited from class org.frankframework.soap.SoapValidator
addSoapEnvelopeToSchemaLocation
Fields inherited from class org.frankframework.pipes.Json2XmlValidator
INPUT_FORMAT_SESSION_KEY_PREFIX
Fields inherited from class org.frankframework.pipes.XmlValidator
configurationException, validator
Fields inherited from class org.frankframework.pipes.AbstractPipe
parameterNamesMustBeUnique
Fields inherited from class org.frankframework.core.TransactionAttributes
log
Fields inherited from interface org.frankframework.core.IPipe
LONG_DURATION_MONITORING_EVENT, MESSAGE_SIZE_MONITORING_EVENT, PIPE_EXCEPTION_MONITORING_EVENT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected static void
addNamespaces
(javax.wsdl.extensions.schema.Schema schema, Map<String, String> namespaces) protected void
void
Configure the XmlValidatorprotected javax.wsdl.Definition
getDefinition
(String wsdl) getWsdl()
getXsds()
void
setSchemaLocationToAdd
(String schemaLocationToAdd) Pairs of URI references which will be added to the WSDLvoid
setSharedWsdlDefinitions
(SharedWsdlDefinitions sharedWsdlDefinitions) void
setSoapBody
(String soapBody) Name of the child element of the SOAP body, or a comma separated list of names to choose from (only one is allowed) (WSDL generator will use the first element) (use empty value to allow an empty SOAP body, for example to allow element x and an empty SOAP body use: x,).void
setSoapBodyNamespace
(String soapBodyNamespace) CreatesschemaLocation
attribute based on the WSDL and replaces the namespace of the soap body elementvoid
The WSDL to read the XSDs fromprotected PipeForward
validate
(Message messageToValidate, PipeLineSession session, boolean responseMode, String messageRoot) Methods inherited from class org.frankframework.soap.SoapValidator
createRootValidation, getMessageRoot, getOutputSoapBody, getResponseRoot, getRoot, getSoapBody, getSoapHeader, getSoapHeaderNamespace, getSoapVersion, isAllowPlainXml, isConfiguredForMixedValidation, setAllowPlainXml, setIgnoreUnknownNamespaces, setNoNamespaceSchemaLocation, setOutputSoapBody, setRoot, setSchema, setSoapHeader, setSoapHeaderNamespace, setSoapVersion
Methods inherited from class org.frankframework.pipes.Json2XmlValidator
addNamespace, alignJson, alignXml2Json, createJsonSchema, createJsonSchema, doPipe, getDomain, getInputFormatSessionKey, getJsonRootValidations, getOutputFormat, getOutputFormat, getOutputFormatSessionKey, getPhysicalDestinationName, getTargetNamespace, isAcceptNamespacelessXml, isAllowJson, isAutoFormat, isCompactJsonArrays, isDeepSearch, isFailOnWildcards, isIgnoreUndeclaredElements, isJsonWithRootElements, isProduceNamespacelessXml, isStrictJsonArraySyntax, isValidateJsonToRootElementOnly, setAcceptNamespacelessXml, setAcceptNamespaceLessXml, setAllowJson, setAutoFormat, setCompactJsonArrays, setDeepSearch, setFailOnWildcards, setIgnoreUndeclaredElements, setInputFormatSessionKey, setJsonWithRootElements, setOutputFormat, setOutputFormatSessionKey, setProduceNamespacelessXml, setProduceNamespaceLessXml, setStrictJsonArraySyntax, setTargetNamespace, setValidateJsonToRootElementOnly, storeInputFormat
Methods inherited from class org.frankframework.pipes.XmlValidator
addInvalidRootNamespaces, addRequestRootValidation, addResponseRootValidation, afterPropertiesSet, determineForward, getCharset, getConfigurationException, getDocumentation, getErrorResult, getIgnoreUnknownNamespaces, getImportedNamespacesToIgnore, getImportedSchemaLocationsToIgnore, getInvalidRootNamespaces, getMessageRoot, getNoNamespaceSchemaLocation, getReasonSessionKey, getRequestRootValidations, getResponseRootValidations, getResponseValidator, getRootElementSessionKey, getRootNamespaceSessionKey, getRootValidations, getSchema, getSchemaLocation, getSchemas, getSchemas, getSchemas, getSchemasId, getSoapNamespace, getSpecialDefaultValue, getXmlReasonSessionKey, getXSModels, isAddNamespaceToSchema, isFullSchemaChecking, isThrowException, isUseBaseImportedSchemaLocationsToIgnore, isValidateFile, setAddNamespaceToSchema, setCharset, setFullSchemaChecking, setIgnoreCaching, setImplementation, setImportedNamespacesToIgnore, setImportedSchemaLocationsToIgnore, setReasonSessionKey, setResponseRoot, setRootElementSessionKey, setRootNamespaceSessionKey, setSchemaLocation, setSoapNamespace, setThrowException, setUseBaseImportedSchemaLocationsToIgnore, setValidateFile, setWarn, setXmlReasonSessionKey, setXmlSchemaVersion, start, stop
Methods inherited from class org.frankframework.pipes.AbstractValidator
determineForward, doPipe, getSchemaSessionKey, isForwardFailureToSuccess, setForwardFailureToSuccess, setSchemaSessionKey, validate, validate
Methods inherited from class org.frankframework.pipes.FixedForwardPipe
getIfParam, getIfValue, getOnlyIfSessionKey, getOnlyIfValue, getParameterValue, getSuccessForward, getUnlessSessionKey, getUnlessValue, isSkipOnEmptyInput, setIfParam, setIfValue, setOnlyIfSessionKey, setOnlyIfValue, setSkipOnEmptyInput, setUnlessSessionKey, setUnlessValue, skipPipe
Methods inherited from class org.frankframework.pipes.AbstractPipe
addForward, addParameter, consumesSessionVariable, createBean, findForward, getAdapter, getApplicationContext, getChompCharSize, getConfigurationClassLoader, getDurationThreshold, getElementToMove, getElementToMoveChain, getElementToMoveSessionKey, getEmptyInputReplacement, getEventSourceName, getForwards, getGetInputFromFixedValue, getGetInputFromSessionKey, getHideRegex, getLocker, getLogIntermediaryResults, getMaxThreads, getName, getParameterList, getPipeLine, getSecLogSessionKeys, getStoreResultInSessionKey, hasRegisteredForward, isPreserveInput, isRemoveCompactMsgNamespaces, isRestoreMovedElements, isWriteToSecLog, registerEvent, setApplicationContext, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setEventPublisher, setGetInputFromFixedValue, setGetInputFromSessionKey, setHideRegex, setLocker, setLogIntermediaryResults, setMaxThreads, setName, setPipeLine, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setSizeStatistics, setStoreResultInSessionKey, setWriteToSecLog, sizeStatisticsEnabled, throwEvent
Methods inherited from class org.frankframework.core.TransactionAttributes
configureTransactionAttributes, getTransactionAttribute, getTransactionTimeout, getTxDef, isTransacted, isTransacted, setTransacted, setTransactionAttribute, setTransactionTimeout
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.context.ApplicationContextAware
setApplicationContext
Methods inherited from interface org.frankframework.core.IConfigurationAware
getApplicationContext, getName
Methods inherited from interface org.frankframework.core.IForwardTarget
getName
Methods inherited from interface org.frankframework.core.INamedObject
getName
Methods inherited from interface org.frankframework.core.IPipe
addForward, consumesSessionVariable, doPipe, getChompCharSize, getDurationThreshold, getElementToMove, getElementToMoveChain, getElementToMoveSessionKey, getEmptyInputReplacement, getForwards, getGetInputFromFixedValue, getGetInputFromSessionKey, getHideRegex, getLocker, getLogIntermediaryResults, getMaxThreads, getSecLogSessionKeys, getStoreResultInSessionKey, isPreserveInput, isRemoveCompactMsgNamespaces, isRestoreMovedElements, isWriteToSecLog, registerEvent, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setGetInputFromFixedValue, setGetInputFromSessionKey, setHideRegex, setLocker, setLogIntermediaryResults, setPipeLine, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setStoreResultInSessionKey, setWriteToSecLog, sizeStatisticsEnabled, throwEvent, throwEvent
Methods inherited from interface org.frankframework.core.IScopeProvider
getConfigurationClassLoader
Methods inherited from interface org.frankframework.core.IValidator
setName, validate
-
Field Details
-
RESOURCE_INTERNAL_REFERENCE_PREFIX
- See Also:
-
-
Constructor Details
-
WsdlXmlValidator
public WsdlXmlValidator()
-
-
Method Details
-
configure
Description copied from class:XmlValidator
Configure the XmlValidator- Specified by:
configure
in interfaceIConfigurable
- Specified by:
configure
in interfaceIPipe
- Overrides:
configure
in classSoapValidator
- Throws:
ConfigurationException
- when:- the schema cannot be found
- <
XmlValidator.isThrowException()
is false and there is no forward defined for "failure" - when the parser does not accept setting the properties for validating
-
getDefinition
- Throws:
ConfigurationException
-
validate
protected PipeForward validate(Message messageToValidate, PipeLineSession session, boolean responseMode, String messageRoot) throws XmlValidatorException, PipeRunException, ConfigurationException - Overrides:
validate
in classXmlValidator
- Throws:
XmlValidatorException
PipeRunException
ConfigurationException
-
checkSchemaSpecified
- Overrides:
checkSchemaSpecified
in classXmlValidator
- Throws:
ConfigurationException
-
addNamespaces
-
getSchemasId
- Specified by:
getSchemasId
in interfaceSchemasProvider
- Overrides:
getSchemasId
in classXmlValidator
-
getXsds
- Specified by:
getXsds
in interfaceIXmlValidator
- Overrides:
getXsds
in classXmlValidator
- Throws:
ConfigurationException
-
toExtendedString
-
setWsdl
The WSDL to read the XSDs from -
setSoapBody
Name of the child element of the SOAP body, or a comma separated list of names to choose from (only one is allowed) (WSDL generator will use the first element) (use empty value to allow an empty SOAP body, for example to allow element x and an empty SOAP body use: x,). In case the request contains SOAPAction header and the WSDL contains an element specific to that SOAPAction, it will use that element as SOAP body.- Overrides:
setSoapBody
in classSoapValidator
-
setSchemaLocationToAdd
Pairs of URI references which will be added to the WSDL -
setSoapBodyNamespace
CreatesschemaLocation
attribute based on the WSDL and replaces the namespace of the soap body element -
getSoapBodyNamespace
-
getWsdl
-
getSchemaLocationToAdd
-