Showing preview only (2,183K chars total). Download the full file or copy to clipboard to get everything.
Repository: reficio/soap-ws
Branch: master
Commit: 93e5a7956ed6
Files: 549
Total size: 1.9 MB
Directory structure:
gitextract_cqglr56k/
├── .gitignore
├── .travis.yml
├── README.md
├── pom.xml
├── soap-builder/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── builder/
│ │ │ ├── SoapBuilder.java
│ │ │ ├── SoapBuilderFinder.java
│ │ │ ├── SoapOperation.java
│ │ │ ├── SoapOperationBuilder.java
│ │ │ ├── SoapOperationFinder.java
│ │ │ └── core/
│ │ │ ├── SoapBuilderImpl.java
│ │ │ ├── SoapOperationFinderImpl.java
│ │ │ ├── SoapOperationImpl.java
│ │ │ ├── SoapUtils.java
│ │ │ └── Wsdl.java
│ │ └── resources/
│ │ └── xsds/
│ │ ├── XMLSchema.xsd
│ │ ├── soapEncoding.xsd
│ │ ├── soapEncoding12.xsd
│ │ ├── soapEnvelope.xsd
│ │ ├── soapEnvelope12.xsd
│ │ ├── swaref.xsd
│ │ ├── xmime200411.xsd
│ │ ├── xmime200505.xsd
│ │ ├── xml.xsd
│ │ └── xop.xsd
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── builder/
│ │ ├── DefinitionSaveTest.java
│ │ ├── MessageComplianceTest.java
│ │ ├── ServiceComplianceTest.java
│ │ ├── SoapBuilderImplTest.java
│ │ ├── SoapOperationFinderImplTest.java
│ │ └── WsdlTest.java
│ └── resources/
│ ├── builder/
│ │ └── snowboard.wsdl
│ ├── log4j.xml
│ ├── messages/
│ │ ├── EmptyFault11.xml
│ │ ├── EmptyFault12.xml
│ │ ├── EmptyMessage11.xml
│ │ ├── EmptyMessage12.xml
│ │ ├── FaultVersionMismatch11.xml
│ │ └── FaultVersionMismatch12.xml
│ ├── services/
│ │ ├── test01/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test02/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test03/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test04/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test05/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test06/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test07/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test08/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── testservice2.xsd
│ │ │ └── xsds/
│ │ │ └── testservice1.xsd
│ │ ├── test09/
│ │ │ ├── TestService.wsdl
│ │ │ ├── common.xsd
│ │ │ ├── one.xsd
│ │ │ ├── operations/
│ │ │ │ ├── Binding/
│ │ │ │ │ ├── Operation.request.xml
│ │ │ │ │ └── Operation.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── two.xsd
│ │ ├── test10/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ └── GetPage.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test11/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── ADEC_MAST_Binding/
│ │ │ │ │ ├── doGetSummary.request.xml
│ │ │ │ │ └── doGetSummary.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test12/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── IncrementServicePTSOAPBinding/
│ │ │ │ │ ├── process.request.xml
│ │ │ │ │ └── process.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test13/
│ │ │ ├── TestService.wsdl
│ │ │ ├── chameleon.xsd
│ │ │ ├── operations/
│ │ │ │ ├── LinkageServiceSOAPBinding/
│ │ │ │ │ ├── addToSocialGroup.request.xml
│ │ │ │ │ ├── addToSocialGroup.response.xml
│ │ │ │ │ ├── createLink.request.xml
│ │ │ │ │ ├── createLink.response.xml
│ │ │ │ │ ├── createSocialGroup.request.xml
│ │ │ │ │ ├── createSocialGroup.response.xml
│ │ │ │ │ ├── readGroups.request.xml
│ │ │ │ │ └── readGroups.response.xml
│ │ │ │ ├── PersonaServiceSOAPBinding/
│ │ │ │ │ ├── deletePersona.request.xml
│ │ │ │ │ ├── deletePersona.response.xml
│ │ │ │ │ ├── readPersona.request.xml
│ │ │ │ │ ├── readPersona.response.xml
│ │ │ │ │ ├── readPersonas.request.xml
│ │ │ │ │ ├── readPersonas.response.xml
│ │ │ │ │ ├── storePersona.request.xml
│ │ │ │ │ └── storePersona.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test14/
│ │ │ ├── TestService.wsdl
│ │ │ └── operations/
│ │ │ ├── MakeFriendsSoapBinding/
│ │ │ │ ├── makeFriend.request.xml
│ │ │ │ └── makeFriend.response.xml
│ │ │ └── soap-version.txt
│ │ ├── test15/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ ├── GetLastTradePrice.response.xml
│ │ │ │ │ ├── GetLastTradePrice2.request.xml
│ │ │ │ │ └── GetLastTradePrice2.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ ├── test16/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ └── GetLastTradePrice.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ ├── test17/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ ├── GetLastTradePrice.response.xml
│ │ │ │ │ ├── GetLastTradePrice2.request.xml
│ │ │ │ │ └── GetLastTradePrice2.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ └── test18/
│ │ ├── TestService.wsdl
│ │ └── operations/
│ │ ├── HelloWorldSoap/
│ │ │ ├── SayHelloWorld.request.xml
│ │ │ └── SayHelloWorld.response.xml
│ │ ├── HelloWorldSoap12/
│ │ │ ├── SayHelloWorld.request.xml
│ │ │ └── SayHelloWorld.response.xml
│ │ └── soap-version.txt
│ └── wsdl/
│ ├── TestService.wsdl
│ ├── testservice1.xsd
│ └── testservice2.xsd
├── soap-client/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── client/
│ │ ├── SoapClientException.java
│ │ ├── TransmissionException.java
│ │ ├── core/
│ │ │ ├── Security.java
│ │ │ ├── SecurityFactory.java
│ │ │ ├── SoapClient.java
│ │ │ ├── SoapClientFactory.java
│ │ │ └── SoapConstants.java
│ │ └── ssl/
│ │ ├── MultiX509TrustManager.java
│ │ └── SSLUtils.java
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── client/
│ │ └── SimpleClientTest.java
│ └── resources/
│ └── log4j.xml
├── soap-common/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ ├── SoapBuilderException.java
│ │ ├── SoapContext.java
│ │ ├── SoapException.java
│ │ ├── SoapMultiValuesProvider.java
│ │ ├── SoapValidationException.java
│ │ ├── annotation/
│ │ │ └── ThreadSafe.java
│ │ └── common/
│ │ ├── FileWriter.java
│ │ ├── ResourceUtils.java
│ │ ├── SimpleValuesProvider.java
│ │ ├── Wsdl11Writer.java
│ │ └── XmlUtils.java
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── common/
│ │ ├── ResourceLoaderTest.java
│ │ ├── ResourceUtilsTest.java
│ │ └── XmlComparator.java
│ └── resources/
│ ├── my folder/
│ │ └── resource.txt
│ └── org/
│ └── reficio/
│ └── ws/
│ └── common/
│ └── test/
│ └── soapEncoding.xsd
├── soap-examples/
│ ├── arquillian/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── test/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── arquillian/
│ │ │ ├── Greeter.java
│ │ │ ├── GreeterTest.java
│ │ │ └── README.txt
│ │ └── resources/
│ │ ├── log4j.xml
│ │ └── wsdl/
│ │ └── currency-convertor.wsdl
│ ├── pom.xml
│ ├── quickstart/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── test/
│ │ ├── groovy/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── quickstart/
│ │ │ └── QuickStart.groovy
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── quickstart/
│ │ │ ├── SoapClientExamplesTest.java
│ │ │ ├── SoapServerExamplesTest.java
│ │ │ └── SpringExampleTest.java
│ │ └── resources/
│ │ ├── applicationContext.xml
│ │ ├── log4j.xml
│ │ └── wsdl/
│ │ ├── currency-convertor.wsdl
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-service.wsdl
│ └── testing/
│ ├── pom.xml
│ └── src/
│ └── test/
│ ├── groovy/
│ │ └── org/
│ │ └── reficio/
│ │ └── sample/
│ │ ├── BankService.groovy
│ │ ├── BankServiceImpl.groovy
│ │ ├── testing/
│ │ │ ├── BalanceClientPlainTest.groovy
│ │ │ ├── BalanceClientSpringTest.groovy
│ │ │ └── ConverterServerTest.groovy
│ │ └── util/
│ │ └── ExampleUtils.groovy
│ └── resources/
│ ├── applicationContext.xml
│ ├── log4j.xml
│ └── wsdl/
│ └── currency-convertor.wsdl
├── soap-it/
│ ├── pom.xml
│ └── src/
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── it/
│ │ ├── AbstractCooperationTest.java
│ │ ├── HttpCooperationTest.java
│ │ ├── HttpProxyHttpCooperationTest.java
│ │ ├── HttpProxyHttpsCooperationTest.java
│ │ ├── HttpsCooperationTest.java
│ │ ├── HttpsProxyHttpCooperationTest.java
│ │ ├── HttpsProxyHttpsCooperationTest.java
│ │ └── util/
│ │ ├── ClientBuilder.java
│ │ ├── SslTunnel.java
│ │ └── TestUtils.java
│ └── resources/
│ ├── keystores/
│ │ ├── multi-cert-keystore/
│ │ │ ├── .keystore
│ │ │ └── gen.sh
│ │ └── single-cert-keystore/
│ │ ├── .keystore_1
│ │ ├── .keystore_2
│ │ └── gen.sh
│ ├── log4j.xml
│ ├── services/
│ │ ├── test01/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test02/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test03/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test04/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test05/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test06/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test07/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test08/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── testservice2.xsd
│ │ │ └── xsds/
│ │ │ └── testservice1.xsd
│ │ ├── test09/
│ │ │ ├── TestService.wsdl
│ │ │ ├── common.xsd
│ │ │ ├── one.xsd
│ │ │ └── two.xsd
│ │ ├── test10/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test11/
│ │ │ └── TestService.wsdl
│ │ ├── test12/
│ │ │ └── TestService.wsdl
│ │ ├── test13/
│ │ │ ├── TestService.wsdl
│ │ │ └── chameleon.xsd
│ │ ├── test14/
│ │ │ └── TestService.wsdl
│ │ ├── test15/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test16/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test17/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test18/
│ │ │ └── TestService.wsdl
│ │ ├── test19/
│ │ │ └── TestService.wsdl
│ │ ├── test20/
│ │ │ └── TestService.wsdl
│ │ ├── test22/
│ │ │ └── TestService.wsdl
│ │ ├── test23/
│ │ │ └── TestService.wsdl
│ │ ├── test25/
│ │ │ ├── TestService.wsdl
│ │ │ └── info.txt
│ │ ├── test26/
│ │ │ └── TestService.wsdl
│ │ └── test27/
│ │ ├── TestService.wsdl
│ │ └── info.txt
│ └── wsdl/
│ ├── doc.literal/
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-ws.wsdl
│ ├── rpc.encoded/
│ │ ├── friend-ws.wsdl
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-ws.wsdl
│ └── rpc.literal/
│ ├── stockquote-schema.xsd
│ └── stockquote-ws.wsdl
├── soap-legacy/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── legacy/
│ │ ├── AbstractSoapVersion.java
│ │ ├── Constants.java
│ │ ├── DefinitionLoader.java
│ │ ├── SampleXmlUtil.java
│ │ ├── SchemaDefinitionWrapper.java
│ │ ├── SchemaLoader.java
│ │ ├── SchemaUtils.java
│ │ ├── SoapLegacyFacade.java
│ │ ├── SoapMessageBuilder.java
│ │ ├── SoapVersion.java
│ │ ├── SoapVersion11.java
│ │ ├── SoapVersion12.java
│ │ ├── UrlSchemaLoader.java
│ │ ├── WsdlContext.java
│ │ ├── WsdlSettings.java
│ │ ├── WsdlUtils.java
│ │ ├── WsdlValidator.java
│ │ └── XmlUtils.java
│ └── resources/
│ ├── license.txt
│ └── xsds/
│ ├── XMLSchema.xsd
│ ├── soapEncoding.xsd
│ ├── soapEncoding12.xsd
│ ├── soapEnvelope.xsd
│ ├── soapEnvelope12.xsd
│ ├── swaref.xsd
│ ├── xmime200411.xsd
│ ├── xmime200505.xsd
│ ├── xml.xsd
│ └── xop.xsd
├── soap-server/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── server/
│ │ │ ├── OperationNotFoundException.java
│ │ │ ├── ServiceRegistrationException.java
│ │ │ ├── SoapServerException.java
│ │ │ ├── core/
│ │ │ │ ├── SoapServer.java
│ │ │ │ ├── SoapServerConstants.java
│ │ │ │ └── SoapServerFactory.java
│ │ │ ├── endpoint/
│ │ │ │ ├── ContextEndpointAdapter.java
│ │ │ │ ├── ContextPayloadEndpoint.java
│ │ │ │ ├── GenericContextDomEndpoint.java
│ │ │ │ ├── GenericEndpointMapping.java
│ │ │ │ └── GenericSoapMessage.java
│ │ │ ├── matcher/
│ │ │ │ ├── AggregatingVisitor.java
│ │ │ │ ├── BindingOperationVisitor.java
│ │ │ │ └── SoapOperationMatcher.java
│ │ │ ├── protocol/
│ │ │ │ ├── GenericSoapMessageFactory.java
│ │ │ │ ├── SimpleSoapProtocolChooser.java
│ │ │ │ └── SoapProtocolChooser.java
│ │ │ └── responder/
│ │ │ ├── AbstractResponder.java
│ │ │ ├── AutoResponder.java
│ │ │ └── RequestResponder.java
│ │ └── resources/
│ │ ├── soap-server.xml
│ │ └── soap-servlet.xml
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── server/
│ │ ├── PasswordLessKeystoreTest.java
│ │ └── SimpleServerTest.java
│ └── resources/
│ ├── keystores/
│ │ ├── .keystore
│ │ ├── gen.sh
│ │ └── keyless.keystore
│ └── log4j.xml
├── soap-test/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── groovy/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── test/
│ │ │ └── spock/
│ │ │ ├── Server.groovy
│ │ │ └── ServerExtension.groovy
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ ├── ServerProcessor.java
│ │ └── junit/
│ │ ├── Server.java
│ │ └── SoapRule.java
│ └── test/
│ ├── groovy/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ └── spock/
│ │ └── SpockExtensionTest.groovy
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ └── junit/
│ │ └── SoapRuleTest.java
│ └── resources/
│ ├── log4j.xml
│ └── wsdl/
│ ├── TestService.wsdl
│ ├── currency-convertor.wsdl
│ ├── testservice1.xsd
│ └── testservice2.xsd
└── src/
├── main/
│ └── resources/
│ ├── findbugs-exclude.xml
│ └── license.txt
└── site/
├── fml/
│ └── faq.fml
└── site.xml
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
# Compiled source #
###################
*.com
*.class
*.dll
*.exe
*.o
*.so
# Packages #
############
# it's better to unpack these files and commit the raw source
# git has its own built in compression methods
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip
# Logs and databases #
######################
*.log
*.sql
*.sqlite
# OS generated files #
######################
.DS_Store?
ehthumbs.db
Icon?
Thumbs.db
# Custom #
######################
target
bin
classes
*.ipr
*.iws
*.iml
.svn
.classpath
.project
.idea
src/site/markdown/*.*
.DS_Store
================================================
FILE: .travis.yml
================================================
language: java
jdk:
- oraclejdk7
================================================
FILE: README.md
================================================
# soap-ws [](http://travis-ci.org/reficio/soap-ws)
## A lightweight and easy-to-use Java library to handle SOAP on a purely XML level.
### Intro
Welcome to soap-ws! This is a lightweight and easy-to-use Java library that wraps Spring-WS and enables handling SOAP on a purely XML level. soap-ws is based on four main abstractions:
* WsdlParser can easily parse your WSDL and produce SoapBuilders,
* SoapBuilder can generate SOAP messages directly in the XML format,
* SoapClient can be used to transmit a SOAP message over HTTP(s) to a web-service endpoint,
* SoapServer can be leveraged to process SOAP messages and and respond to them.
All of that requires no generation of stubs - everything happens directly in XML having - is the provider.
### Why should you use soap-ws?
Read this carefully and check if you know what we are talking about.
* Have you ever had problems with the versioning of web-service endpoints? Have you ever had to address the problem how to deal with many versions of the same classes generated from two versions of the same WSDL in one code base? Did you try to prefix the classes, change the package, or do any other mambo-jumbo tricks that are clearly against the best-practices of software design?
* Have you every tried to chain and orchestrate a few web-service invocations applying some XSLT transformation to the consecutive responses forwarding them to the next endpoint? Have you ever seen how cumbersome it is using Java generated ws clients/servers?
* Have you ever had to re-generate the ws-stubs, recompile and redeploy you application because of a tiny change in the WSDL?
* Have you every been confused why you generate all these domain and stub classes to invoke one simple web-service operation and to get a plain response that could be processed with XSTL one-liner?
* Have you ever had to had to send a simple XML message to a SOAP server in a fire and forget mode?
* Have you ever had to expose a mock SOAP endpoint that would respond to the request sending a sample response -let's say in an unit test?
* Have you ever had to download a hierarchical WSDL file with hierarchical XSD schemas and store it on your local hard drive with all the import and includes fixed properly so that you can reuse it locally?
* Have you ever…
Yes, that's what soap-ws can do for you. But it can do much more, just dive in and check the plethora of stuff that we have implemented.
### What is supported?
* supports WSDL 1.1
* supports SOAP 1.1 and 1.2
* supports all four WS flavors: rpc-encoded, rpc-literal, document-literal and document-encoded
* supports SSL and basic-authentication
* supports SOCKS, HTTP and HTTPS proxies
* supports SpringFramework
* supports JUnit, Spock and Arquillian
### Main features
soap-builder:
* fetch, parse and store WSDL (hierarchical WSDLs and XSDs supported)
* generate a soap XML message on the basis of the imported WSDL
soap-client:
* communication and message handling purely in the XML format
* basic authentication and SSL support
* HTTP(s) and SOCKS proxy support, with/without basic authentication
soap-server:
* endpoint exposition - communication and message handling purely in the XML format
* extensive operation matcher - validate and match a request to a BindingOperation from the WSDL
* auto-responder - respond to a soap request with a sample content
* HTTP and HTTPS support
### License
The project is open-source and distributed under the Apache license, Version 2.0.
One module (soap-legacy) is distributed under the LGPL 2.1 license (see the Note).
You can confidently use soap-ws in your commercial project.
## User Guide
### Quick-start
#### Add soap-ws to your maven project
In order to use soap-ws in your project you have to declare soap-ws in the dependencies section of your pom.xml. You can mix and match soap-builder, soap-client, soap-server artifacts, depending on the fact what you want to achieve.
```xml
<dependencies>
<dependency>
<groupId>org.reficio</groupId>
<artifactId>soap-builder</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.reficio</groupId>
<artifactId>soap-client</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.reficio</groupId>
<artifactId>soap-server</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
</dependencies>
```
soap-ws is not yet located in the central maven repo, thus you also have to add an additional repository to your config.
```xml
<repositories>
<repository>
<id>reficio</id>
<url>http://repo.reficio.org/maven/</url>
</repository>
</repositories>
```
If you are a Gradle user you probably know how to do it :)
#### Consume a Web-Serivce in 60 seconds
Let's consume the CurrencyConverter Web-Service. Thanks to the fluent builders the API is straigtforward and intuitive.
Does it need any explanation? Welcome to soap-ws :)
```java
Wsdl wsdl = Wsdl.parse("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL");
SoapBuilder builder = wsdl.binding()
.localPart("CurrencyConvertorSoap")
.find();
SoapOperation operation = builder.operation()
.soapAction("http://www.webserviceX.NET/ConversionRate")
.find();
Request request = builder.buildInputMessage(operation)
SoapClient client = SoapClient.builder()
.endpointUrl("http://www.webservicex.net/CurrencyConvertor.asmx")
.build();
String response = client.post(request);
```
#### Provide a Web-Service in 60 seconds
Let's provide the CurrencyConverter Web-Service that returns random results (compliant with the schema!).
```java
Wsdl wsdl = Wsdl.parse("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL");
SoapBuilder builder = wsdl.binding()
.localPart("CurrencyConvertorSoap")
.find();
SoapServer server = SoapServer.builder()
.httpPort(9090)
.build();
server.registerRequestResponder("/currencyConvertor", new AutoResponder(builder));
server.start();
```
That's more or less what you need to generate a SOAP message and consume/provide a Web-Service.
### API
Let's have a closer look at the API and the main abstractions.
#### SoapBuilder
SoapBuilder interface describes the features of generation of XML SOAP messages. An instance of the SoapBuilder class is always bound to a specific wsdl file and one of its bindings. There can be more bindings in one WSDL file - in order to handle all of theme an instance of SoapBuilder is needed for every binding.
The simplest way to construct an instance of the Wsdl is to call the static factory method "parse", passing the URL of the WSDL file (1).
```java
Wsdl wsdl = Wsdl.parse(wsdlUrl); // (1)
List<QName> bindings = wsdl.getBindings(); // (2)
SoapBuilder builder = wsdl.binding().localPart("CurrencyConvertorSoap").find(); // (3)
wsdl.printBindings(); // (4)
List<SoapOperation> operations = builder.getOperations(); // (5)
SoapOperation operation = builder.operation().name("ConversionRate").find(); // (6)
```
Wsdl.parse(wsdlUrl) reads the specified WSDL file recursively, fetching all included WSDL and XSD files and constructs an underlying javax.wsdl.Definition object that is the Java-based representation of the WSDL (see WSDL4j to read more about the Definitoin object).
In order to generate a SOAP message you have to specify the Binding. To check what binding are defined in the WSDL invoke the getBindings() method (2). You can also use the binding finder, just call the binding() method and add additional parameters such as localPart(""), etc. Then invoke builder to get an instance of the SoapBuilder().
Finally, you can invoke the printBindings() method that will print all the binding to the stdout (just as a quick hack) (4).
The last step is to generate a SOAP message using the SoapBuilder. In order to do it though you have to specify the SOAP operation. In order to get the list of operations specified in that binding just invoke the getOperations() method on the SoapBuilder object (5). You can also use the SOAP operation finder - just call the operation() method and chain additional parameters such as name(), etc. Then call find() and get a reference to the Soap Operation.
Now you are all set. To generate a SOAP message in the XML format just invoke one of the methods defined in the SoapBuilder interface specifiying the SoapOperation. You can also build generic empty messages invoking buildEmptyMessage or buildFault:
```java
public interface SoapBuilder {
String buildInputMessage(SoapOperation operation);
String buildInputMessage(SoapOperation operation, SoapContext context);
String buildOutputMessage(SoapOperation operation);
String buildOutputMessage(SoapOperation operation, SoapContext context);
String buildFault(String code, String message);
String buildFault(String code, String message, SoapContext context);
String buildEmptyFault();
String buildEmptyFault(SoapContext context);
String buildEmptyMessage();
// (…)
}
```
Last, but not least. In most of the cases, you can relay on the default settings of the SoapContext that specifies how messages are generated, but if you would like to change it you have to populate the SoapContext object and pass it either to the Wsdl (from that moment on, SoapBuilder will use this context as the default one), or to single methods, changing the context of the generation for the time span of a single method invocation. In order to populate a SoapContext object use the fluent builder presented below.
```java
SoapContext context = SoapContext.builder()
.alwaysBuildHeaders(true)
.buildOptional(true)
.exampleContent(true)
.typeComment(true)
.skipComments(false)
.build();
```
#### SoapClient
You can create an instance of a soap-client using a fluent builder. If you want to use a plain HTTP connection without tweaking any advance options you are good to go with the following snippet:
```java
SoapClient client = SoapClient.builder()
.endpointUrl("http://example.com/endpoint")
.build();
```
Then, you can send a SOAP envelope (as a String) invoking the post() method:
```java
client.post(soapAction, envelope);
```
You can also skip the SOAPAction header and send the envelope only:
```java
client.post(envelope);
```
#### SoapServer
Use a similar builder to create an instance of the soap-server.
```java
SoapServer server = SoapServer.builder()
.httpPort(8080)
.build();
```
You can start and stop the server using start/stop methods
```java
server.start();
server.stop();
```
Now we would like to turn our server into a mock server that responds to request generating a sample content that is complaint with the schema of the operation that is being invoked.
To do that we have to create an AutoResponder and register it under the given context path.
Autoresponder requires a populated SoapBuilder instance (that contains the WSDL and the binding name which it should use). Keep in mind the there can be only one binding under one context path;
```java
String contextPath = "/exampleEndpoint";
AutoResponder responder = new AutoResponder(soapBuilder);
server.registerResponder(contextPath, responder);
```
From that moment our server will respond to request send to the "exampleEndpoint" context path.
If you would like to handle the request yourself you just have to implement the RequestResponder interface.
```java
public interface RequestResponder {
java.xml.Source respond(SoapMessage request);
}
```
It may be a bit cumbersome, as it is not that easy to match an XML request to the binding and operation, that is the reason why we provided an AbstractResponder that does all of that backstage.
```java
public abstract class AbstractResponder implements RequestResponder {
// (…)
/**
* Abstract method that should be implemented by overriding classes.
* This method is invoked whenever a request is send by the client.
* InvokedOperation may be passed to a SoapBuilder to construct the
* response to the request that was sent by the client.
*
* @param invokedOperation operation from the binding that is matched to the SOAP message
* @param message SOAP message passed by the client
* @return response in the XML source format containing the whole SOAP envelope
*/
public abstract Source respond(SoapOperation invokedOperation, SoapMessage message);
}
```
AbstractResponder does all the hard work for you to match the message to the BindingOperation from the WSDL. If it find it the respond() operation is invoked, if not a SOAP fault is send back to the client saying the operation has not been found.
AbstractResponder uses our implementation of the SoapOperationMatcher that matches the request to the operation in the following way:
* SOAP Action mapping
* RCP bindings are matched using single top-level tag with the name of the invoked operation
* Document bindings are matched by input types and then by input names
Having the SoapOperation object provided by the AbstractResponder you can easily generate and modify the response that you create using SoapBuilder that available in the responder as a instance field called builder.
That's a lot of stuff. I hope you enjoyed it! Have a look at the examples located in the soap-examples project. Try it out now and leave send us some feedback!
### Project modules
* soap-builder - responsible for the generation of SOAP XML messages.
* soap-client - responsible for the communication with a SOAP endpoint.
* soap-server - responsible for exposing SOAP endpoints and handling the requests.
* soap-it - contains integration tests - tests soap-client and soap-server in many tricky ways.
* soap-examples - contains a few example how to use soap-ws.
* soap-legacy - legacy code extracted from 3rd party projects
### Example usage
#### Generate and post a SOAP message
```java
Wsdl wsdl = Wsdl.parse("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL");
SoapBuilder builder = wsdl.binding()
.localPart("CurrencyConvertorSoap")
.find();
SoapOperation operation = builder.operation()
.soapAction("http://www.webserviceX.NET/ConversionRate")
.find();
Request request = builder.buildInputMessage(operation)
SoapClient client = SoapClient.builder()
.endpointUrl("http://www.webservicex.net/CurrencyConvertor.asmx")
.build();
String response = client.post(request);
```
#### Create a SoapServer
```java
SoapServer server = SoapServer.builder()
.httpPort(9090)
.build();
server.start();
```
#### Create a SoapServer with AutoResponder (great to unit test web-services)
```java
SoapServer server = SoapServer.builder()
.httpPort(9090)
.build();
server.start();
URL wsdlUrl = ResourceUtils.getResourceWithAbsolutePackagePath("/", "wsdl/stockquote-service.wsdl");
Wsdl wsdl = Wsdl.parse(wsdlUrl);
SoapBuilder builder = wsdl.binding().localPart("StockQuoteSoapBinding").find();
AutoResponder responder = new AutoResponder(builder);
server.registerRequestResponder("/service", responder);
server.stop();
```
#### Create a SoapServer with a custom responder
```java
SoapServer server = SoapServer.builder()
.httpPort(9090)
.build();
server.start();
URL wsdlUrl = ResourceUtils.getResourceWithAbsolutePackagePath("/", "wsdl/stockquote-service.wsdl");
Wsdl wsdl = Wsdl.parse(wsdlUrl);
final SoapBuilder builder = wsdl.binding().localPart("StockQuoteSoapBinding").find();
AbstractResponder customResponder = new AbstractResponder(builder) {
@Override
public Source respond(SoapOperation invokedOperation, SoapMessage message) {
try {
// build the response using builder
String response = builder.buildOutputMessage(invokedOperation);
// here you can tweak the response -> for example with XSLT
//...
return XmlUtils.xmlStringToSource(response);
} catch (Exception e) {
// will automatically generate SOAP-FAULT
throw new RuntimeException("my custom error", e);
}
}
};
server.registerRequestResponder("/service", customResponder);
```
You can find all these working examples in the soap-examples project. Enjoy!
#### Spring example
Spring configuration:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- wsdl part (locally referenced wsdl) -->
<bean id="wsdlResource" class="org.springframework.core.io.ClassPathResource">
<constructor-arg>
<value>wsdl/currency-convertor.wsdl</value>
</constructor-arg>
</bean>
<bean id="wsdlUrl" class="java.net.URL" factory-bean="wsdlResource" factory-method="getURL"/>
<!-- uncomment to use the local wsdl" -->
<!--<bean id="wsdl" class="org.reficio.ws.builder.core.Wsdl" factory-method="parse">-->
<!--<constructor-arg ref="wsdlUrl"/>-->
<!--</bean>-->
<!-- wsdl part (remote wsdl) -->
<bean id="wsdl" class="org.reficio.ws.builder.core.Wsdl" factory-method="parse">
<constructor-arg>
<value>http://www.webservicex.net/CurrencyConvertor.asmx?WSDL</value>
</constructor-arg>
</bean>
<!-- soap-builder part -->
<bean id="soapContext" class="org.reficio.ws.SoapContext">
<constructor-arg name="exampleContent" type="boolean" value="true"/>
<constructor-arg name="typeComments" type="boolean" value="true"/>
<constructor-arg name="buildOptional" type="boolean" value="true"/>
<constructor-arg name="alwaysBuildHeaders" type="boolean" value="true"/>
<constructor-arg name="valueComments" type="boolean" value="true"/>
</bean>
<bean id="soapBuilder" class="org.reficio.ws.builder.SoapBuilder" factory-bean="wsdl" factory-method="getBuilder">
<constructor-arg name="bindingName">
<value>{http://www.webserviceX.NET/}CurrencyConvertorSoap</value>
</constructor-arg>
<constructor-arg name="context" ref="soapContext"/>
</bean>
<!-- security part -->
<bean id="securityFactory" class="org.reficio.ws.client.core.SecurityFactory">
<property name="authUsername" value="tom"/>
<property name="authPassword" value="007"/>
<property name="authMethod" value="basic"/>
<property name="strictHostVerification" value="true"/>
<property name="sslContextProtocol" value="SSLv3"/>
</bean>
<bean id="security" class="org.reficio.ws.client.core.Security" factory-bean="securityFactory" factory-method="create"/>
<!-- soap-client part -->
<bean id="soapClientFactory" class="org.reficio.ws.client.core.SoapClientFactory">
<property name="endpointUri" value="http://localhost:8778/currencyConverter/soap"/>
<property name="endpointSecurity" ref="security"/>
</bean>
<bean id="soapClient" class="org.reficio.ws.client.core.SoapClient" factory-bean="soapClientFactory" factory-method="create"/>
<!-- soap-server part -->
<bean id="autoResponder" class="org.reficio.ws.server.responder.AutoResponder">
<constructor-arg ref="soapBuilder"/>
</bean>
<bean id="soapServerFactory" class="org.reficio.ws.server.core.SoapServerFactory">
<property name="httpPort" value="8778"/>
<property name="responders">
<map>
<entry key="/currencyConverter/soap" value-ref="autoResponder"/>
</map>
</property>
</bean>
<bean id="soapServer" factory-bean="soapServerFactory" factory-method="create" init-method="start"/>
</beans>
```
Then you can inject the beans to your code, for example in such a way:
```java
@Autowired
private SoapBuilder builder;
@Autowired
private SoapClient client;
@Autowired
private SoapServer server;
```
## Last but not least
### How can I hack around?
* GitHub -> https://github.com/reficio/soap-ws
* Jenkins -> https://reficio.ci.cloudbees.com/job/soap-ws/
* Site -> http://projects.reficio.org/soap-ws/1.0.0-SNAPSHOT/manual.html
### Who's behind it?
Tom Bujok [tom.bujok@gmail.com]
### History
This project was initially developed at centeractive ag for the purposes of the
open-sphere project. The library has been successfully incorporated into open-sphere
and that initial version could be found in the centeractive's repository at github.
Currently the project is developed and maintained solely by Tom Bujok at reficio.org
### Note
This project contains classes extracted from the soapUI code base by centeractive ag
in October 2011. They are located in the soap-legacy module. Every extracted class is
annotated with an comment to fulfill the requirements of the LGPL 2.1 license under
which soapUI is released. That is also the reason why soap-legacy module is
released under LGPL 2.1 license. All other soap-ws modules are released under Apache
v.2 license. The main reason behind the class extraction was to separate the code that
is responsible for the generation of the SOAP messages from the rest of the soapUI's
code that is tightly coupled with other modules, such as soapUI's graphical user
interface, etc. The goal was to create an open-source java project whose main
responsibility is to handle SOAP message generation and SOAP transmission purely on
an XML level.
centeractive ag would like to express strong appreciation to SmartBear Software and
to the whole team of soapUI's developers for creating soapUI and for releasing its
source code under a free and open-source license. centeractive ag extracted and
modified some parts of the soapUI's code in good faith, making every effort not
to impair any existing functionality and to supplement it according to our
requirements, applying best practices of software design.
[](https://bitdeli.com/free "Bitdeli Badge")
================================================
FILE: pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.reficio</groupId>
<artifactId>soap-ws</artifactId>
<packaging>pom</packaging>
<version>1.0.0-SNAPSHOT</version>
<name>soap-ws</name>
<description>
soap-ws is a lightweight and easy-to-use Java library to handle SOAP message generation and SOAP message transmission
on a purely XML level. With the usage of this library within few lines of code you can easily import your WSDL and generate
SOAP messages directly in an XML format. Then you can use the SoapClient to transmit this message over HTTP(s) to a web-service
endpoint. Finally, you can run SoapServer to receive SOAP messages and and respond to them. And all of that requires no classes
or stubs generation - everything happens directly in an XML format.
</description>
<url>http://projects.reficio.org/soap-ws/${project.version}</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<gmaven.version>1.5</gmaven.version>
<gmaven.provider.selection>2.0</gmaven.provider.selection>
<groovy.version>2.1.2</groovy.version>
</properties>
<modules>
<module>soap-common</module>
<module>soap-legacy</module>
<module>soap-builder</module>
<module>soap-client</module>
<module>soap-server</module>
<module>soap-it</module>
<module>soap-examples</module>
<module>soap-test</module>
</modules>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<inceptionYear>2012</inceptionYear>
<developers>
<developer>
<id>tom.bujok</id>
<name>Tom Bujok</name>
<email>tom.bujok@gmail.com</email>
<organization>reficio</organization>
<organizationUrl>http://www.reficio.org</organizationUrl>
<roles>
<role>project lead</role>
<role>developer</role>
</roles>
<timezone>+1</timezone>
</developer>
</developers>
<issueManagement>
<system>github</system>
<url>https://github.com/reficio/soap-ws/issues</url>
</issueManagement>
<scm>
<connection>scm:git:git://github.com/reficio/soap-ws.git</connection>
<developerConnection>scm:git:git@github.com:reficio/soap-ws.git</developerConnection>
<url>http://github.com/reficio/soap-ws</url>
</scm>
<ciManagement>
<system>jenkins</system>
<url>https://reficio.ci.cloudbees.com/job/soap-ws/</url>
</ciManagement>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
</dependency>
<dependency>
<groupId>org.spockframework</groupId>
<artifactId>spock-core</artifactId>
<version>0.7-groovy-2.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.guava-osgi</groupId>
<artifactId>guava-osgi</artifactId>
<version>11.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.schema</groupId>
<artifactId>XmlSchema</artifactId>
<version>1.4.5</version>
</dependency>
<dependency>
<groupId>org.codehaus.gmaven.runtime</groupId>
<artifactId>gmaven-runtime-2.0</artifactId>
<version>${gmaven.version}</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>${gmaven.version}</version>
<configuration>
<source/>
<providerSelection>${gmaven.provider.selection}</providerSelection>
<sourceEncoding>UTF-8</sourceEncoding>
</configuration>
<executions>
<execution>
<goals>
<goal>generateStubs</goal>
<goal>compile</goal>
<goal>generateTestStubs</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
</plugin>
<!--<plugin>-->
<!--<groupId>org.spockframework</groupId>-->
<!--<artifactId>spock-maven</artifactId>-->
<!--<version>0.7-groovy-2.0</version>-->
<!--<!–<executions>–>-->
<!--<!–<execution>–>-->
<!--<!–<goals>–>-->
<!--<!–<goal>find-specs</goal>–>-->
<!--<!–</goals>–>-->
<!--<!–</execution>–>-->
<!--<!–</executions>–>-->
<!--</plugin>-->
<plugin>
<groupId>com.mycila.maven-license-plugin</groupId>
<artifactId>maven-license-plugin</artifactId>
<version>1.10.b1</version>
<configuration>
<strictCheck>true</strictCheck>
<basedir>${basedir}</basedir>
<header>src/main/resources/license.txt</header>
<quiet>false</quiet>
<failIfMissing>true</failIfMissing>
<aggregate>false</aggregate>
<includes>
<include>src/**</include>
<include>**/test/**</include>
</includes>
<excludes>
<exclude>target/**</exclude>
<exclude>**/resources/**</exclude>
<exclude>.clover/**</exclude>
</excludes>
<useDefaultExcludes>true</useDefaultExcludes>
<mapping>
<jwc>XML_STYLE</jwc>
<application>XML_STYLE</application>
<myFileExtension>JAVADOC_STYLE</myFileExtension>
</mapping>
<useDefaultMapping>true</useDefaultMapping>
<properties>
<year>${project.inceptionYear}-2013</year>
<company>Reficio (TM) - Reestablish your software!</company>
</properties>
<encoding>UTF-8</encoding>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.4</version>
<extensions>true</extensions>
<inherited>true</inherited>
<configuration>
<instructions>
<Implementation-Title>${project.artifactId}</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Bundle-Name>${project.artifactId}</Bundle-Name>
<Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
<!--
<Export-Package>{local-packages};version=${project.version};-noimport:=true</Export-Package>
-->
<Import-Package>*</Import-Package>
<Private-Package>!*</Private-Package>
<_versionpolicy-impl>[$(version;==;$(@)),$(version;=+;$(@)))</_versionpolicy-impl>
<_versionpolicy-uses>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy-uses>
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
<_failok>false</_failok>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
<!--<phase>compile</phase>-->
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<quiet>true</quiet>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.1</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-markdown</artifactId>
<version>1.3</version>
</dependency>
</dependencies>
<configuration>
<reportPlugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.2</version>
<configuration>
<dependencyDetailsEnabled>false</dependencyDetailsEnabled>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
</configuration>
<reports>
<report>index</report>
<report>project-team</report>
<report>help</report>
<report>cim</report>
<report>issue-tracking</report>
<report>license</report>
<report>scm</report>
<report>summary</report>
</reports>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.2</version>
<configuration>
<aggregate>true</aggregate>
</configuration>
<reportSets>
<reportSet>
<reports>
<report>jxr</report>
<report>test-jxr</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<!-- marker to add clover report -->
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<version>3.1.7</version>
<configuration>
<cloverMergeDatabase>${user.home}/clover/soap-ws/cloverMerged.db</cloverMergeDatabase>
</configuration>
</plugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ftp</artifactId>
<version>2.2</version>
</extension>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.2</version>
</extension>
</extensions>
</build>
<repositories>
<repository>
<id>reficio</id>
<url>http://repo.reficio.org/maven/</url>
</repository>
<repository>
<id>eviware</id>
<url>http://www.eviware.com/repository/maven2/</url>
</repository>
<repository>
<id>jboss</id>
<url>https://repository.jboss.org/nexus/content/repositories/deprecated/</url>
</repository>
<repository>
<id>servicemix</id>
<url>http://svn.apache.org/repos/asf/servicemix/m2-repo/</url>
</repository>
</repositories>
<profiles>
<profile>
<id>clover</id>
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<version>3.1.7</version>
<configuration>
<cloverMergeDatabase>${user.home}/clover/soap-ws/cloverMerged.db</cloverMergeDatabase>
<generateHtml>true</generateHtml>
<generateXml>true</generateXml>
<includesAllSourceRoots>true</includesAllSourceRoots>
<includesTestSourceRoots>true</includesTestSourceRoots>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>site</id>
<activation>
<!-- invoke only on top-level project -->
<file>
<exists>README.md</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>modify-markdown</id>
<phase>pre-site</phase>
<configuration>
<failOnError>false</failOnError>
<target>
<copy todir="${basedir}/src/site/markdown">
<fileset dir="${basedir}" includes="README.md"/>
</copy>
<move file="${basedir}/src/site/markdown/README.md"
tofile="${basedir}/src/site/markdown/manual.md"/>
<replaceregexp file="${basedir}/src/site/markdown/manual.md"
match="```.*"
replace=""
byline="true"/>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<id>default-cli</id>
<configuration>
<tasks>
<echo message="Running ANT for deploying the site..."/>
<property name="project_folder" value="/var/www/projects/${project.artifactId}"/>
<property name="version_folder" value="${project_folder}/${project.version}"/>
<property name="site_tgz" value="${project.artifactId}-${project.version}-site.tgz"/>
<tar destfile="target/${site_tgz}" basedir="target/site" compression="gzip"/>
<echo message="Creating folder for the site ${version_folder}"/>
<sshexec host="${reficio.server}"
username="${reficio.usr}"
password="${reficio.pwd}"
verbose="false"
command="mkdir -p ${version_folder}"/>
<echo message="Uploading compressed site ${site_tgz}"/>
<scp file="target/${site_tgz}" todir="${reficio.usr}@${reficio.server}:${project_folder}/"
password="${reficio.pwd}" verbose="false"/>
<echo message="Extracting compressed site and cleaning up"/>
<sshexec host="${reficio.server}"
username="${reficio.usr}"
password="${reficio.pwd}"
verbose="false"
command="rm -rf ${version_folder}/*; tar -C ${version_folder} -xf ${project_folder}/${site_tgz}; rm ${project_folder}/${project.artifactId}-${project.version}-site.tgz"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-jsch</artifactId>
<version>1.8.4</version>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.48</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>findbugs</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.4.0</version>
<executions>
<execution>
<id>findbugs</id>
<phase>compile</phase>
<goals>
<goal>findbugs</goal>
</goals>
<configuration>
<xmlOutput>true</xmlOutput>
<excludeFilterFile>src/main/resources/findbugs-exclude.xml</excludeFilterFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<distributionManagement>
<repository>
<id>reficio</id>
<name>Reficio Maven Repository</name>
<url>scp://${reficio.server}/var/www/repo/maven</url>
</repository>
</distributionManagement>
</project>
================================================
FILE: soap-builder/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.reficio</groupId>
<artifactId>soap-builder</artifactId>
<packaging>bundle</packaging>
<name>soap-builder - XML based SOAP message generator</name>
<parent>
<groupId>org.reficio</groupId>
<artifactId>soap-ws</artifactId>
<version>1.0.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<dependencies>
<dependency>
<groupId>org.reficio</groupId>
<artifactId>soap-common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.reficio</groupId>
<artifactId>soap-legacy</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.1</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</project>
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilder.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder;
import org.reficio.ws.SoapContext;
import javax.wsdl.Binding;
import javax.xml.namespace.QName;
import java.util.List;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public interface SoapBuilder {
List<SoapOperation> getOperations();
SoapOperationFinder operation();
SoapContext getContext();
SoapOperationBuilder getOperationBuilder(SoapOperation operation);
String buildInputMessage(SoapOperation operation);
String buildInputMessage(SoapOperation operation, SoapContext context);
String buildOutputMessage(SoapOperation operation);
String buildOutputMessage(SoapOperation operation, SoapContext context);
String buildFault(String code, String message);
String buildFault(String code, String message, SoapContext context);
String buildEmptyFault();
String buildEmptyFault(SoapContext context);
String buildEmptyMessage();
String buildEmptyMessage(SoapContext context);
QName getBindingName();
Binding getBinding();
List<String> getServiceUrls();
void validateInputMessage(SoapOperation operation, String message);
void validateInputMessage(SoapOperation operation, String message, boolean strict);
void validateOutputMessage(SoapOperation operation, String message);
void validateOutputMessage(SoapOperation operation, String message, boolean strict);
boolean isRpc();
boolean isInputSoapEncoded(SoapOperation operation);
boolean isOutputSoapEncoded(SoapOperation operation);
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilderFinder.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder;
import org.reficio.ws.SoapContext;
import javax.xml.namespace.QName;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public interface SoapBuilderFinder {
SoapBuilderFinder name(String name);
SoapBuilderFinder name(QName name);
SoapBuilderFinder namespaceURI(String namespaceURI);
SoapBuilderFinder localPart(String localPart);
SoapBuilderFinder prefix(String prefix);
SoapBuilder find();
SoapBuilder find(SoapContext context);
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperation.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder;
import javax.xml.namespace.QName;
/**
* Wrapper object that represents one operation from a WSDL's binding
*
* @author Tom Bujok
* @since 1.0.0
*/
public interface SoapOperation {
QName getBindingName();
String getOperationName();
String getOperationInputName();
String getOperationOutputName();
String getSoapAction();
boolean isRpc();
boolean isInputSoapEncoded();
boolean isOutputSoapEncoded();
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationBuilder.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder;
import org.reficio.ws.SoapContext;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public interface SoapOperationBuilder extends SoapOperation {
void setContext(SoapContext context);
SoapContext getContext();
String buildInputMessage();
String buildInputMessage(SoapContext context);
String buildOutputMessage();
String buildOutputMessage(SoapContext context);
String buildFault(String code, String message);
String buildFault(String code, String message, SoapContext context);
String buildEmptyFault();
String buildEmptyFault(SoapContext context);
String buildEmptyMessage();
String buildEmptyMessage(SoapContext context);
void validateInputMessage(String message);
void validateInputMessage(String message, boolean strict);
void validateOutputMessage(String message);
void validateOutputMessage(String message, boolean strict);
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationFinder.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder;
import org.reficio.ws.SoapContext;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public interface SoapOperationFinder {
SoapOperationFinder name(String operationName);
SoapOperationFinder soapAction(String soapAction);
SoapOperationFinder inputName(String inputName);
SoapOperationFinder outputName(String inputName);
SoapOperationBuilder find();
SoapOperationBuilder find(SoapContext context);
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapBuilderImpl.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder.core;
import org.reficio.ws.SoapBuilderException;
import org.reficio.ws.SoapContext;
import org.reficio.ws.builder.SoapBuilder;
import org.reficio.ws.builder.SoapOperation;
import org.reficio.ws.builder.SoapOperationBuilder;
import org.reficio.ws.builder.SoapOperationFinder;
import org.reficio.ws.legacy.SoapLegacyFacade;
import javax.wsdl.Binding;
import javax.wsdl.BindingOperation;
import javax.wsdl.Port;
import javax.wsdl.Service;
import javax.xml.namespace.QName;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
* @author Tom Bujok
* @since 1.0.0
*/
class SoapBuilderImpl implements SoapBuilder {
private final SoapLegacyFacade soapFacade;
private final Binding binding;
private final SoapContext context;
private final List<String> serviceUrls;
SoapBuilderImpl(SoapLegacyFacade soapFacade, Binding binding, SoapContext context) {
this.soapFacade = soapFacade;
this.binding = binding;
this.context = context;
this.serviceUrls = new ArrayList<String>();
initializeServiceUrls();
}
@SuppressWarnings("unchecked")
private void initializeServiceUrls() {
for (Service service : soapFacade.getServices()) {
for (Port port : (Collection<Port>) service.getPorts().values()) {
String address = SoapLegacyFacade.getSoapEndpoint(port);
if (address != null) {
serviceUrls.add(address);
}
}
}
}
public BindingOperation getBindingOperation(SoapOperation op) {
BindingOperation operation = binding.getBindingOperation(op.getOperationName(),
op.getOperationInputName(), op.getOperationOutputName());
if (operation == null) {
throw new SoapBuilderException("Operation not found");
}
return operation;
}
@Override
@SuppressWarnings("unchecked")
public List<SoapOperation> getOperations() {
List<SoapOperation> operationNames = new ArrayList<SoapOperation>();
for (BindingOperation operation : (List<BindingOperation>) binding.getBindingOperations()) {
operationNames.add(SoapOperationImpl.create(this, binding, operation));
}
return operationNames;
}
@Override
public SoapContext getContext() {
return context;
}
@Override
public SoapOperationBuilder getOperationBuilder(SoapOperation operation) {
BindingOperation bindingOperation = getBindingOperation(operation);
return SoapOperationImpl.create(this, binding, bindingOperation);
}
@Override
public SoapOperationFinder operation() {
return new SoapOperationFinderImpl(this, binding);
}
@Override
public String buildInputMessage(SoapOperation operation) {
return buildInputMessage(operation, context);
}
@Override
public String buildInputMessage(SoapOperation operation, SoapContext context) {
try {
return soapFacade.buildSoapMessageFromInput(binding, getBindingOperation(operation), context);
} catch (Exception e) {
throw new SoapBuilderException(e);
}
}
@Override
public String buildOutputMessage(SoapOperation operation) {
return buildOutputMessage(operation, context);
}
@Override
public String buildOutputMessage(SoapOperation operation, SoapContext context) {
try {
return soapFacade.buildSoapMessageFromOutput(binding, getBindingOperation(operation), context);
} catch (Exception e) {
throw new SoapBuilderException(e);
}
}
@Override
public String buildFault(String code, String message) {
return soapFacade.buildFault(code, message, binding, context);
}
@Override
public String buildFault(String code, String message, SoapContext context) {
return soapFacade.buildFault(code, message, binding, context);
}
@Override
public String buildEmptyFault() {
return soapFacade.buildEmptyFault(binding, context);
}
@Override
public String buildEmptyFault(SoapContext context) {
return soapFacade.buildEmptyFault(binding, context);
}
@Override
public String buildEmptyMessage() {
return soapFacade.buildEmptyMessage(binding, context);
}
@Override
public String buildEmptyMessage(SoapContext context) {
return soapFacade.buildEmptyMessage(binding, context);
}
@Override
public QName getBindingName() {
return binding.getQName();
}
@Override
public Binding getBinding() {
return binding;
}
@Override
public List<String> getServiceUrls() {
return new ArrayList<String>(serviceUrls);
}
@Override
public void validateInputMessage(SoapOperation operation, String message) {
BindingOperation bindingOperation = getBindingOperation(operation);
soapFacade.validateSoapRequestMessage(binding, bindingOperation, message, false);
}
@Override
public void validateInputMessage(SoapOperation operation, String message, boolean strict) {
BindingOperation bindingOperation = getBindingOperation(operation);
soapFacade.validateSoapRequestMessage(binding, bindingOperation, message, strict);
}
@Override
public void validateOutputMessage(SoapOperation operation, String message) {
BindingOperation bindingOperation = getBindingOperation(operation);
soapFacade.validateSoapResponseMessage(binding, bindingOperation, message, false);
}
@Override
public void validateOutputMessage(SoapOperation operation, String message, boolean strict) {
BindingOperation bindingOperation = getBindingOperation(operation);
soapFacade.validateSoapResponseMessage(binding, bindingOperation, message, strict);
}
@Override
public boolean isRpc() {
return SoapLegacyFacade.isRpc(binding);
}
@Override
public boolean isInputSoapEncoded(SoapOperation operation) {
return soapFacade.isInputSoapEncoded(getBindingOperation(operation));
}
@Override
public boolean isOutputSoapEncoded(SoapOperation operation) {
return soapFacade.isOutputSoapEncoded(getBindingOperation(operation));
}
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationFinderImpl.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder.core;
import com.google.common.base.Preconditions;
import org.reficio.ws.SoapBuilderException;
import org.reficio.ws.SoapContext;
import org.reficio.ws.builder.SoapBuilder;
import org.reficio.ws.builder.SoapOperationBuilder;
import org.reficio.ws.builder.SoapOperationFinder;
import javax.wsdl.Binding;
import javax.wsdl.BindingOperation;
import java.util.ArrayList;
import java.util.List;
/**
* @author Tom Bujok
* @since 1.0.0
*/
class SoapOperationFinderImpl implements SoapOperationFinder {
private final Binding binding;
private String operationName;
private String operationInputName;
private String operationOutputName;
private String soapAction;
private SoapBuilder builder;
SoapOperationFinderImpl(SoapBuilder builder, Binding binding) {
this.binding = binding;
this.builder = builder;
}
@Override
public SoapOperationFinder name(String operationName) {
Preconditions.checkNotNull(operationName);
this.operationName = operationName;
return this;
}
@Override
public SoapOperationFinder soapAction(String soapAction) {
Preconditions.checkNotNull(soapAction);
this.soapAction = soapAction;
return this;
}
@Override
public SoapOperationFinder inputName(String inputName) {
Preconditions.checkNotNull(inputName);
this.operationInputName = inputName;
return this;
}
@Override
public SoapOperationFinder outputName(String outputName) {
Preconditions.checkNotNull(outputName);
this.operationOutputName = outputName;
return this;
}
@Override
@SuppressWarnings("unchecked")
public SoapOperationBuilder find() {
validateInput();
List<SoapOperationBuilder> found = new ArrayList<SoapOperationBuilder>();
for (BindingOperation operation : (List<BindingOperation>) binding.getBindingOperations()) {
boolean condition = true;
condition &= checkOperationName(operation);
condition &= checkSoapAction(operation);
condition &= checkOperationInputName(operation);
condition &= checkOperationOutputName(operation);
if(condition) {
found.add(SoapOperationImpl.create(builder, binding, operation));
if(found.size() > 1) {
throw new SoapBuilderException("Operation not unique - found more than one operation");
}
}
}
if(found.isEmpty()) {
throw new SoapBuilderException("Found no operations");
}
return found.iterator().next();
}
@Override
public SoapOperationBuilder find(SoapContext context) {
SoapOperationBuilder builder = find();
builder.setContext(context);
return builder;
}
private void validateInput() {
boolean failed = true;
failed &= this.operationName == null;
failed &= this.soapAction == null;
failed &= this.operationInputName == null;
failed &= this.operationOutputName == null;
if(failed) {
throw new IllegalArgumentException("All finder properties cannot be null");
}
}
private boolean checkOperationName(BindingOperation op) {
if (this.operationName != null) {
return this.operationName.equals(op.getOperation().getName());
}
return true;
}
private boolean checkSoapAction(BindingOperation op) {
if (this.soapAction != null) {
return this.soapAction.equals(SoapUtils.getSOAPActionUri(op));
}
return true;
}
private boolean checkOperationInputName(BindingOperation op) {
if (this.operationInputName != null) {
return this.operationInputName.equals(op.getOperation().getInput().getName());
}
return true;
}
private boolean checkOperationOutputName(BindingOperation op) {
if (this.operationOutputName != null) {
return this.operationOutputName.equals(op.getOperation().getOutput().getName());
}
return true;
}
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationImpl.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder.core;
import org.reficio.ws.SoapContext;
import org.reficio.ws.builder.SoapBuilder;
import org.reficio.ws.builder.SoapOperation;
import org.reficio.ws.builder.SoapOperationBuilder;
import javax.wsdl.Binding;
import javax.wsdl.BindingOperation;
import javax.xml.namespace.QName;
/**
* @author Tom Bujok
* @since 1.0.0
*/
class SoapOperationImpl implements SoapOperation, SoapOperationBuilder {
private final QName bindingName;
private final String operationName;
private final String operationInputName;
private final String operationOutputName;
private final String soapAction;
private final SoapBuilder builder;
private SoapContext context;
SoapOperationImpl(SoapBuilder builder, QName bindingName, String operationName, String operationInputName,
String operationOutputName, String soapAction) {
this.builder = builder;
this.bindingName = bindingName;
this.operationName = operationName;
this.operationInputName = operationInputName;
this.operationOutputName = operationOutputName;
this.soapAction = soapAction;
this.context = builder.getContext();
}
public QName getBindingName() {
return bindingName;
}
public String getOperationName() {
return operationName;
}
public String getOperationInputName() {
return operationInputName;
}
public String getOperationOutputName() {
return operationOutputName;
}
public String getSoapAction() {
return soapAction;
}
@Override
public boolean isRpc() {
return builder.isRpc();
}
@Override
public boolean isInputSoapEncoded() {
return builder.isInputSoapEncoded(this);
}
@Override
public boolean isOutputSoapEncoded() {
return builder.isOutputSoapEncoded(this);
}
static SoapOperationBuilder create(SoapBuilder builder, Binding binding, BindingOperation operation) {
String soapAction = SoapUtils.getSOAPActionUri(operation);
return create(builder, binding, operation, soapAction);
}
static SoapOperationBuilder create(SoapBuilder builder, Binding binding, BindingOperation operation, String soapAction) {
String bindingInputName = operation.getBindingInput() != null ? operation.getBindingInput().getName() : null;
String bindingOutputName = operation.getBindingOutput() != null ? operation.getBindingOutput().getName() : null;
return new SoapOperationImpl(builder, binding.getQName(), operation.getName(), bindingInputName, bindingOutputName,
SoapUtils.normalizeSoapAction(soapAction));
}
public String toString() {
return String.format("bindingName=[%s] operationName=[%s] operationInputName=[%s] operationOutputName=[%s] soapAction=[%s]",
bindingName.toString(), operationName, operationInputName, operationOutputName, soapAction);
}
@Override
public void setContext(SoapContext context) {
this.context = context;
}
@Override
public SoapContext getContext() {
return builder.getContext();
}
@Override
public String buildInputMessage() {
return builder.buildInputMessage(this, context);
}
@Override
public String buildInputMessage(SoapContext context) {
return builder.buildInputMessage(this, context);
}
@Override
public String buildOutputMessage() {
return builder.buildOutputMessage(this, context);
}
@Override
public String buildOutputMessage(SoapContext context) {
return builder.buildOutputMessage(this, context);
}
@Override
public String buildFault(String code, String message) {
return builder.buildFault(code, message, context);
}
@Override
public String buildFault(String code, String message, SoapContext context) {
return builder.buildFault(code, message, context);
}
@Override
public String buildEmptyFault() {
return builder.buildEmptyFault(context);
}
@Override
public String buildEmptyFault(SoapContext context) {
return builder.buildEmptyFault(context);
}
@Override
public String buildEmptyMessage() {
return builder.buildEmptyMessage(context);
}
@Override
public String buildEmptyMessage(SoapContext context) {
return builder.buildEmptyMessage(context);
}
@Override
public void validateInputMessage(String message) {
builder.validateInputMessage(this, message);
}
@Override
public void validateInputMessage(String message, boolean strict) {
builder.validateInputMessage(this, message, strict);
}
@Override
public void validateOutputMessage(String message) {
builder.validateOutputMessage(this, message);
}
@Override
public void validateOutputMessage(String message, boolean strict) {
builder.validateOutputMessage(this, message, strict);
}
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapUtils.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder.core;
import org.reficio.ws.builder.SoapBuilder;
import org.reficio.ws.builder.SoapOperationBuilder;
import javax.wsdl.Binding;
import javax.wsdl.BindingOperation;
import javax.wsdl.extensions.ExtensibilityElement;
import javax.wsdl.extensions.soap.SOAPOperation;
import javax.wsdl.extensions.soap12.SOAP12Operation;
import java.util.List;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public class SoapUtils {
// removes "" from soap action
public static String normalizeSoapAction(String soapAction) {
String normalizedSoapAction = "";
if (soapAction != null && soapAction.length() > 0) {
normalizedSoapAction = soapAction;
if (soapAction.charAt(0) == '"' && soapAction.charAt(soapAction.length() - 1) == '"') {
normalizedSoapAction = soapAction.substring(1, soapAction.length() - 1).trim();
}
}
return normalizedSoapAction;
}
public static String getSOAPActionUri(BindingOperation operation) {
List extensions = operation.getExtensibilityElements();
if (extensions != null) {
for (int i = 0; i < extensions.size(); i++) {
ExtensibilityElement extElement = (ExtensibilityElement) extensions.get(i);
if (extElement instanceof SOAPOperation) {
SOAPOperation soapOp = (SOAPOperation) extElement;
return soapOp.getSoapActionURI();
} else if (extElement instanceof SOAP12Operation) {
SOAP12Operation soapOp = (SOAP12Operation) extElement;
return soapOp.getSoapActionURI();
}
}
}
return null;
}
public static SoapOperationBuilder createOperation(SoapBuilder builder, Binding binding, BindingOperation operation, String soapAction) {
return SoapOperationImpl.create(builder, binding, operation, soapAction);
}
}
================================================
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/Wsdl.java
================================================
/**
* Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.reficio.ws.builder.core;
import com.google.common.base.Preconditions;
import org.apache.commons.lang3.StringUtils;
import org.reficio.ws.SoapBuilderException;
import org.reficio.ws.SoapContext;
import org.reficio.ws.builder.SoapBuilder;
import org.reficio.ws.builder.SoapBuilderFinder;
import org.reficio.ws.legacy.SoapLegacyFacade;
import javax.wsdl.Binding;
import javax.wsdl.WSDLException;
import javax.xml.namespace.QName;
import java.io.File;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
/**
* @author Tom Bujok
* @since 1.0.0
*/
public final class Wsdl {
private final URL wsdlUrl;
private final SoapLegacyFacade soapFacade;
private Wsdl(URL wsdlUrl) {
try {
this.wsdlUrl = wsdlUrl;
this.soapFacade = new SoapLegacyFacade(wsdlUrl);
} catch (WSDLException e) {
throw new SoapBuilderException(e);
}
}
public static Wsdl parse(URL wsdlUrl) {
Preconditions.checkNotNull(wsdlUrl, "URL of the WSDL cannot be null");
return new Wsdl(wsdlUrl);
}
public static Wsdl parse(String wsdlUrl) {
Preconditions.checkNotNull(wsdlUrl, "URL of the WSDL cannot be null");
try {
return new Wsdl(new URL(wsdlUrl));
} catch (MalformedURLException e) {
throw new SoapBuilderException(e);
}
}
public List<QName> getBindings() {
return soapFacade.getBindingNames();
}
public SoapBuilderFinder binding() {
return new SoapBuilderFinderImpl();
}
public URL saveWsdl(File rootWsdl) {
return soapFacade.saveWsdl(rootWsdl.getName(), rootWsdl.getParentFile());
}
public static URL saveWsdl(URL wsdlUrl, File rootWsdl) {
return SoapLegacyFacade.saveWsdl(wsdlUrl, rootWsdl.getName(), rootWsdl.getParentFile());
}
public void printBindings() {
System.out.println(wsdlUrl);
for (QName bindingName : soapFacade.getBindingNames()) {
System.out.println("\t" + bindingName.toString());
}
}
class SoapBuilderFinderImpl implements SoapBuilderFinder {
SoapBuilderFinderImpl() {
}
private String namespaceURI;
private String localPart;
private String prefix;
@Override
public SoapBuilderFinder name(String name) {
return name(QName.valueOf(name));
}
@Override
public SoapBuilderFinder name(QName name) {
this.namespaceURI = name.getNamespaceURI();
this.localPart = name.getLocalPart();
this.prefix = name.getPrefix();
return this;
}
@Override
public SoapBuilderFinder namespaceURI(String namespaceURI) {
this.namespaceURI = namespaceURI;
return this;
}
@Override
public SoapBuilderFinder localPart(String localPart) {
this.localPart = localPart;
return this;
}
@Override
public SoapBuilderFinder prefix(String prefix) {
this.prefix = prefix;
return this;
}
@Override
public SoapBuilder find() {
validate();
return getBuilder(getBindingName(), SoapContext.DEFAULT);
}
@Override
public SoapBuilder find(SoapContext context) {
validate();
return getBuilder(getBindingName(), context);
}
private QName getBindingName() {
List<QName> result = new ArrayList<QName>();
for (QName bindingName : soapFacade.getBindingNames()) {
if (bindingName.getLocalPart().equals(localPart)) {
if (namespaceURI != null) {
if (!bindingName.getNamespaceURI().equals(namespaceURI)) {
continue;
}
}
if (prefix != null) {
if (!bindingName.getPrefix().equals(prefix)) {
continue;
}
}
result.add(bindingName);
}
}
if (result.isEmpty()) {
throw new SoapBuilderException("Binding not found");
}
if (result.size() > 1) {
throw new SoapBuilderException("Found more than one binding " + result);
}
return result.iterator().next();
}
private void validate() {
if (StringUtils.isBlank(localPart)) {
throw new SoapBuilderException("Specify at least localPart of the binding's QName");
}
}
}
public SoapBuilder getBuilder(String bindingName) {
return getBuilder(bindingName, SoapContext.DEFAULT);
}
public SoapBuilder getBuilder(String bindingName, SoapContext context) {
Preconditions.checkNotNull(bindingName, "BindingName cannot be null");
return getBuilder(QName.valueOf(bindingName), context);
}
public SoapBuilder getBuilder(QName bindingName) {
return getBuilder(bindingName, SoapContext.DEFAULT);
}
public SoapBuilder getBuilder(QName bindingName, SoapContext context) {
Preconditions.checkNotNull(bindingName, "BindingName cannot be null");
Preconditions.checkNotNull(context, "SoapContext cannot be null");
Binding binding = soapFacade.getBindingByName(bindingName);
return new SoapBuilderImpl(soapFacade, binding, context);
}
}
================================================
FILE: soap-builder/src/main/resources/xsds/XMLSchema.xsd
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!-- XML Schema schema for XML Schemas: Part 1: Structures -->
<!-- Note this schema is NOT the normative structures schema. -->
<!-- The prose copy in the structures REC is the normative -->
<!-- version (which shouldn't differ from this one except for -->
<!-- this comment and entity expansions, but just in case -->
<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN"
"/opt/workspaces/reficio/soap-ws/soap-builder/src/main/resources/xsds/XMLSchema.xsd" [
<!-- provide ID type information even for parsers which only read the
internal subset -->
<!ATTLIST xs:schema id ID #IMPLIED>
<!ATTLIST xs:complexType id ID #IMPLIED>
<!ATTLIST xs:complexContent id ID #IMPLIED>
<!ATTLIST xs:simpleContent id ID #IMPLIED>
<!ATTLIST xs:extension id ID #IMPLIED>
<!ATTLIST xs:element id ID #IMPLIED>
<!ATTLIST xs:group id ID #IMPLIED>
<!ATTLIST xs:all id ID #IMPLIED>
<!ATTLIST xs:choice id ID #IMPLIED>
<!ATTLIST xs:sequence id ID #IMPLIED>
<!ATTLIST xs:any id ID #IMPLIED>
<!ATTLIST xs:anyAttribute id ID #IMPLIED>
<!ATTLIST xs:attribute id ID #IMPLIED>
<!ATTLIST xs:attributeGroup id ID #IMPLIED>
<!ATTLIST xs:unique id ID #IMPLIED>
<!ATTLIST xs:key id ID #IMPLIED>
<!ATTLIST xs:keyref id ID #IMPLIED>
<!ATTLIST xs:selector id ID #IMPLIED>
<!ATTLIST xs:field id ID #IMPLIED>
<!ATTLIST xs:include id ID #IMPLIED>
<!ATTLIST xs:import id ID #IMPLIED>
<!ATTLIST xs:redefine id ID #IMPLIED>
<!ATTLIST xs:notation id ID #IMPLIED>
<!--
keep this schema XML1.0 DTD valid
-->
<!ENTITY % schemaAttrs 'xmlns:hfp CDATA #IMPLIED'>
<!ELEMENT hfp:hasFacet EMPTY>
<!ATTLIST hfp:hasFacet
name NMTOKEN #REQUIRED>
<!ELEMENT hfp:hasProperty EMPTY>
<!ATTLIST hfp:hasProperty
name NMTOKEN #REQUIRED
value CDATA #REQUIRED>
<!--
Make sure that processors that do not read the external
subset will know about the various IDs we declare
-->
<!ATTLIST xs:simpleType id ID #IMPLIED>
<!ATTLIST xs:maxExclusive id ID #IMPLIED>
<!ATTLIST xs:minExclusive id ID #IMPLIED>
<!ATTLIST xs:maxInclusive id ID #IMPLIED>
<!ATTLIST xs:minInclusive id ID #IMPLIED>
<!ATTLIST xs:totalDigits id ID #IMPLIED>
<!ATTLIST xs:fractionDigits id ID #IMPLIED>
<!ATTLIST xs:length id ID #IMPLIED>
<!ATTLIST xs:minLength id ID #IMPLIED>
<!ATTLIST xs:maxLength id ID #IMPLIED>
<!ATTLIST xs:enumeration id ID #IMPLIED>
<!ATTLIST xs:pattern id ID #IMPLIED>
<!ATTLIST xs:appinfo id ID #IMPLIED>
<!ATTLIST xs:documentation id ID #IMPLIED>
<!ATTLIST xs:list id ID #IMPLIED>
<!ATTLIST xs:union id ID #IMPLIED>
]>
<xs:schema targetNamespace="http://www.w3.org/2001/XMLSchema" blockDefault="#all" elementFormDefault="qualified" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="EN" xmlns:hfp="http://www.w3.org/2001/XMLSchema-hasFacetAndProperty">
<xs:annotation>
<xs:documentation>
Part 1 version: Id: structures.xsd,v 1.2 2004/01/15 11:34:25 ht Exp
Part 2 version: Id: datatypes.xsd,v 1.3 2004/01/23 18:11:13 ht Exp
</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/structures.html">
The schema corresponding to this document is normative,
with respect to the syntactic constraints it expresses in the
XML Schema language. The documentation (within <documentation> elements)
below, is not normative, but rather highlights important aspects of
the W3C Recommendation of which this is a part</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
The simpleType element and all of its members are defined
towards the end of this schema document</xs:documentation>
</xs:annotation>
<!--
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd">
<xs:annotation>
<xs:documentation>
Get access to the xml: attribute groups for xml:lang
as declared on 'schema' and 'documentation' below
</xs:documentation>
</xs:annotation>
</xs:import>
-->
<xs:complexType name="openAttrs">
<xs:annotation>
<xs:documentation>
This type is extended by almost all schema types
to allow attributes from other namespaces to be
added to user schemas.
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="annotated">
<xs:annotation>
<xs:documentation>
This type is extended by all types which allow annotation
other than <schema> itself
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:openAttrs">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="id" type="xs:ID"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:group name="schemaTop">
<xs:annotation>
<xs:documentation>
This group is for the
elements which occur freely at the top level of schemas.
All of their types are based on the "annotated" type by extension.</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:group ref="xs:redefinable"/>
<xs:element ref="xs:element"/>
<xs:element ref="xs:attribute"/>
<xs:element ref="xs:notation"/>
</xs:choice>
</xs:group>
<xs:group name="redefinable">
<xs:annotation>
<xs:documentation>
This group is for the
elements which can self-redefine (see <redefine> below).</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element ref="xs:simpleType"/>
<xs:element ref="xs:complexType"/>
<xs:element ref="xs:group"/>
<xs:element ref="xs:attributeGroup"/>
</xs:choice>
</xs:group>
<xs:simpleType name="formChoice">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="qualified"/>
<xs:enumeration value="unqualified"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="reducedDerivationControl">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:derivationControl">
<xs:enumeration value="extension"/>
<xs:enumeration value="restriction"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="derivationSet">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
<xs:documentation>
#all or (possibly empty) subset of {extension, restriction}</xs:documentation>
</xs:annotation>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="#all"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:list itemType="xs:reducedDerivationControl"/>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:simpleType name="typeDerivationControl">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:derivationControl">
<xs:enumeration value="extension"/>
<xs:enumeration value="restriction"/>
<xs:enumeration value="list"/>
<xs:enumeration value="union"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="fullDerivationSet">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
<xs:documentation>
#all or (possibly empty) subset of {extension, restriction, list, union}</xs:documentation>
</xs:annotation>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="#all"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:list itemType="xs:typeDerivationControl"/>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:element name="schema" id="schema">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-schema"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:openAttrs">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="xs:include"/>
<xs:element ref="xs:import"/>
<xs:element ref="xs:redefine"/>
<xs:element ref="xs:annotation"/>
</xs:choice>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:group ref="xs:schemaTop"/>
<xs:element ref="xs:annotation" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:sequence>
<xs:attribute name="targetNamespace" type="xs:anyURI"/>
<xs:attribute name="version" type="xs:token"/>
<xs:attribute name="finalDefault" type="xs:fullDerivationSet" use="optional" default=""/>
<xs:attribute name="blockDefault" type="xs:blockSet" use="optional" default=""/>
<xs:attribute name="attributeFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
<xs:attribute name="elementFormDefault" type="xs:formChoice" use="optional" default="unqualified"/>
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:key name="element">
<xs:selector xpath="xs:element"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="attribute">
<xs:selector xpath="xs:attribute"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="type">
<xs:selector xpath="xs:complexType|xs:simpleType"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="group">
<xs:selector xpath="xs:group"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="attributeGroup">
<xs:selector xpath="xs:attributeGroup"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="notation">
<xs:selector xpath="xs:notation"/>
<xs:field xpath="@name"/>
</xs:key>
<xs:key name="identityConstraint">
<xs:selector xpath=".//xs:key|.//xs:unique|.//xs:keyref"/>
<xs:field xpath="@name"/>
</xs:key>
</xs:element>
<xs:simpleType name="allNNI">
<xs:annotation><xs:documentation>
for maxOccurs</xs:documentation></xs:annotation>
<xs:union memberTypes="xs:nonNegativeInteger">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="unbounded"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:attributeGroup name="occurs">
<xs:annotation><xs:documentation>
for all particles</xs:documentation></xs:annotation>
<xs:attribute name="minOccurs" type="xs:nonNegativeInteger" use="optional" default="1"/>
<xs:attribute name="maxOccurs" type="xs:allNNI" use="optional" default="1"/>
</xs:attributeGroup>
<xs:attributeGroup name="defRef">
<xs:annotation><xs:documentation>
for element, group and attributeGroup,
which both define and reference</xs:documentation></xs:annotation>
<xs:attribute name="name" type="xs:NCName"/>
<xs:attribute name="ref" type="xs:QName"/>
</xs:attributeGroup>
<xs:group name="typeDefParticle">
<xs:annotation>
<xs:documentation>
'complexType' uses this</xs:documentation></xs:annotation>
<xs:choice>
<xs:element name="group" type="xs:groupRef"/>
<xs:element ref="xs:all"/>
<xs:element ref="xs:choice"/>
<xs:element ref="xs:sequence"/>
</xs:choice>
</xs:group>
<xs:group name="nestedParticle">
<xs:choice>
<xs:element name="element" type="xs:localElement"/>
<xs:element name="group" type="xs:groupRef"/>
<xs:element ref="xs:choice"/>
<xs:element ref="xs:sequence"/>
<xs:element ref="xs:any"/>
</xs:choice>
</xs:group>
<xs:group name="particle">
<xs:choice>
<xs:element name="element" type="xs:localElement"/>
<xs:element name="group" type="xs:groupRef"/>
<xs:element ref="xs:all"/>
<xs:element ref="xs:choice"/>
<xs:element ref="xs:sequence"/>
<xs:element ref="xs:any"/>
</xs:choice>
</xs:group>
<xs:complexType name="attribute">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
</xs:sequence>
<xs:attributeGroup ref="xs:defRef"/>
<xs:attribute name="type" type="xs:QName"/>
<xs:attribute name="use" use="optional" default="optional">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="prohibited"/>
<xs:enumeration value="optional"/>
<xs:enumeration value="required"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="default" type="xs:string"/>
<xs:attribute name="fixed" type="xs:string"/>
<xs:attribute name="form" type="xs:formChoice"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="topLevelAttribute">
<xs:complexContent>
<xs:restriction base="xs:attribute">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:element name="simpleType" minOccurs="0" type="xs:localSimpleType"/>
</xs:sequence>
<xs:attribute name="ref" use="prohibited"/>
<xs:attribute name="form" use="prohibited"/>
<xs:attribute name="use" use="prohibited"/>
<xs:attribute name="name" use="required" type="xs:NCName"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:group name="attrDecls">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="attribute" type="xs:attribute"/>
<xs:element name="attributeGroup" type="xs:attributeGroupRef"/>
</xs:choice>
<xs:element ref="xs:anyAttribute" minOccurs="0"/>
</xs:sequence>
</xs:group>
<xs:element name="anyAttribute" type="xs:wildcard" id="anyAttribute">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-anyAttribute"/>
</xs:annotation>
</xs:element>
<xs:group name="complexTypeModel">
<xs:choice>
<xs:element ref="xs:simpleContent"/>
<xs:element ref="xs:complexContent"/>
<xs:sequence>
<xs:annotation>
<xs:documentation>
This branch is short for
<complexContent>
<restriction base="xs:anyType">
...
</restriction>
</complexContent></xs:documentation>
</xs:annotation>
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
</xs:choice>
</xs:group>
<xs:complexType name="complexType" abstract="true">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:group ref="xs:complexTypeModel"/>
<xs:attribute name="name" type="xs:NCName">
<xs:annotation>
<xs:documentation>
Will be restricted to required or forbidden</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="mixed" type="xs:boolean" use="optional" default="false">
<xs:annotation>
<xs:documentation>
Not allowed if simpleContent child is chosen.
May be overriden by setting on complexContent child.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="final" type="xs:derivationSet"/>
<xs:attribute name="block" type="xs:derivationSet"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="topLevelComplexType">
<xs:complexContent>
<xs:restriction base="xs:complexType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:complexTypeModel"/>
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="localComplexType">
<xs:complexContent>
<xs:restriction base="xs:complexType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:complexTypeModel"/>
</xs:sequence>
<xs:attribute name="name" use="prohibited"/>
<xs:attribute name="abstract" use="prohibited"/>
<xs:attribute name="final" use="prohibited"/>
<xs:attribute name="block" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="restrictionType">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:choice minOccurs="0">
<xs:group ref="xs:typeDefParticle"/>
<xs:group ref="xs:simpleRestrictionModel"/>
</xs:choice>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:attribute name="base" type="xs:QName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="complexRestrictionType">
<xs:complexContent>
<xs:restriction base="xs:restrictionType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0">
<xs:annotation>
<xs:documentation>This choice is added simply to
make this a valid restriction per the REC</xs:documentation>
</xs:annotation>
<xs:group ref="xs:typeDefParticle"/>
</xs:choice>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="extensionType">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:group ref="xs:typeDefParticle" minOccurs="0"/>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:attribute name="base" type="xs:QName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="complexContent" id="complexContent">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexContent"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:choice>
<xs:element name="restriction" type="xs:complexRestrictionType"/>
<xs:element name="extension" type="xs:extensionType"/>
</xs:choice>
<xs:attribute name="mixed" type="xs:boolean">
<xs:annotation>
<xs:documentation>
Overrides any setting on complexType parent.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="simpleRestrictionType">
<xs:complexContent>
<xs:restriction base="xs:restrictionType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0">
<xs:annotation>
<xs:documentation>This choice is added simply to
make this a valid restriction per the REC</xs:documentation>
</xs:annotation>
<xs:group ref="xs:simpleRestrictionModel"/>
</xs:choice>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="simpleExtensionType">
<xs:complexContent>
<xs:restriction base="xs:extensionType">
<xs:sequence>
<xs:annotation>
<xs:documentation>
No typeDefParticle group reference</xs:documentation>
</xs:annotation>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="simpleContent" id="simpleContent">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-simpleContent"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:choice>
<xs:element name="restriction" type="xs:simpleRestrictionType"/>
<xs:element name="extension" type="xs:simpleExtensionType"/>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="complexType" type="xs:topLevelComplexType" id="complexType">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-complexType"/>
</xs:annotation>
</xs:element>
<xs:simpleType name="blockSet">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
<xs:documentation>
#all or (possibly empty) subset of {substitution, extension,
restriction}</xs:documentation>
</xs:annotation>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="#all"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:list>
<xs:simpleType>
<xs:restriction base="xs:derivationControl">
<xs:enumeration value="extension"/>
<xs:enumeration value="restriction"/>
<xs:enumeration value="substitution"/>
</xs:restriction>
</xs:simpleType>
</xs:list>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:complexType name="element" abstract="true">
<xs:annotation>
<xs:documentation>
The element element can be used either
at the top level to define an element-type binding globally,
or within a content model to either reference a globally-defined
element or type or declare an element-type binding locally.
The ref form is not allowed at the top level.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:choice minOccurs="0">
<xs:element name="simpleType" type="xs:localSimpleType"/>
<xs:element name="complexType" type="xs:localComplexType"/>
</xs:choice>
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attributeGroup ref="xs:defRef"/>
<xs:attribute name="type" type="xs:QName"/>
<xs:attribute name="substitutionGroup" type="xs:QName"/>
<xs:attributeGroup ref="xs:occurs"/>
<xs:attribute name="default" type="xs:string"/>
<xs:attribute name="fixed" type="xs:string"/>
<xs:attribute name="nillable" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="abstract" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="final" type="xs:derivationSet"/>
<xs:attribute name="block" type="xs:blockSet"/>
<xs:attribute name="form" type="xs:formChoice"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="topLevelElement">
<xs:complexContent>
<xs:restriction base="xs:element">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0">
<xs:element name="simpleType" type="xs:localSimpleType"/>
<xs:element name="complexType" type="xs:localComplexType"/>
</xs:choice>
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="ref" use="prohibited"/>
<xs:attribute name="form" use="prohibited"/>
<xs:attribute name="minOccurs" use="prohibited"/>
<xs:attribute name="maxOccurs" use="prohibited"/>
<xs:attribute name="name" use="required" type="xs:NCName"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="localElement">
<xs:complexContent>
<xs:restriction base="xs:element">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0">
<xs:element name="simpleType" type="xs:localSimpleType"/>
<xs:element name="complexType" type="xs:localComplexType"/>
</xs:choice>
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="substitutionGroup" use="prohibited"/>
<xs:attribute name="final" use="prohibited"/>
<xs:attribute name="abstract" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="element" type="xs:topLevelElement" id="element">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-element"/>
</xs:annotation>
</xs:element>
<xs:complexType name="group" abstract="true">
<xs:annotation>
<xs:documentation>
group type for explicit groups, named top-level groups and
group references</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:group ref="xs:particle" minOccurs="0" maxOccurs="unbounded"/>
<xs:attributeGroup ref="xs:defRef"/>
<xs:attributeGroup ref="xs:occurs"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="realGroup">
<xs:complexContent>
<xs:restriction base="xs:group">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element ref="xs:all"/>
<xs:element ref="xs:choice"/>
<xs:element ref="xs:sequence"/>
</xs:choice>
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="namedGroup">
<xs:complexContent>
<xs:restriction base="xs:realGroup">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:element name="all">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:all">
<xs:group ref="xs:allModel"/>
<xs:attribute name="minOccurs" use="prohibited"/>
<xs:attribute name="maxOccurs" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="choice" type="xs:simpleExplicitGroup"/>
<xs:element name="sequence" type="xs:simpleExplicitGroup"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:NCName"/>
<xs:attribute name="ref" use="prohibited"/>
<xs:attribute name="minOccurs" use="prohibited"/>
<xs:attribute name="maxOccurs" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="groupRef">
<xs:complexContent>
<xs:restriction base="xs:realGroup">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="ref" use="required" type="xs:QName"/>
<xs:attribute name="name" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="explicitGroup">
<xs:annotation>
<xs:documentation>
group type for the three kinds of group</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="xs:group">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="prohibited"/>
<xs:attribute name="ref" type="xs:QName" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="simpleExplicitGroup">
<xs:complexContent>
<xs:restriction base="xs:explicitGroup">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:nestedParticle" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="minOccurs" use="prohibited"/>
<xs:attribute name="maxOccurs" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:group name="allModel">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>This choice with min/max is here to
avoid a pblm with the Elt:All/Choice/Seq
Particle derivation constraint</xs:documentation>
</xs:annotation>
<xs:element name="element" type="xs:narrowMaxMin"/>
</xs:choice>
</xs:sequence>
</xs:group>
<xs:complexType name="narrowMaxMin">
<xs:annotation>
<xs:documentation>restricted max/min</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="xs:localElement">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:choice minOccurs="0">
<xs:element name="simpleType" type="xs:localSimpleType"/>
<xs:element name="complexType" type="xs:localComplexType"/>
</xs:choice>
<xs:group ref="xs:identityConstraint" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="minOccurs" use="optional" default="1">
<xs:simpleType>
<xs:restriction base="xs:nonNegativeInteger">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="maxOccurs" use="optional" default="1">
<xs:simpleType>
<xs:restriction base="xs:allNNI">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="all">
<xs:annotation>
<xs:documentation>
Only elements allowed inside</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:restriction base="xs:explicitGroup">
<xs:group ref="xs:allModel"/>
<xs:attribute name="minOccurs" use="optional" default="1">
<xs:simpleType>
<xs:restriction base="xs:nonNegativeInteger">
<xs:enumeration value="0"/>
<xs:enumeration value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="maxOccurs" use="optional" default="1">
<xs:simpleType>
<xs:restriction base="xs:allNNI">
<xs:enumeration value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="all" id="all" type="xs:all">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-all"/>
</xs:annotation>
</xs:element>
<xs:element name="choice" type="xs:explicitGroup" id="choice">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-choice"/>
</xs:annotation>
</xs:element>
<xs:element name="sequence" type="xs:explicitGroup" id="sequence">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-sequence"/>
</xs:annotation>
</xs:element>
<xs:element name="group" type="xs:namedGroup" id="group">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-group"/>
</xs:annotation>
</xs:element>
<xs:complexType name="wildcard">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="namespace" type="xs:namespaceList" use="optional" default="##any"/>
<xs:attribute name="processContents" use="optional" default="strict">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="skip"/>
<xs:enumeration value="lax"/>
<xs:enumeration value="strict"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="any" id="any">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-any"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:wildcard">
<xs:attributeGroup ref="xs:occurs"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:annotation>
<xs:documentation>
simple type for the value of the 'namespace' attr of
'any' and 'anyAttribute'</xs:documentation>
</xs:annotation>
<xs:annotation>
<xs:documentation>
Value is
##any - - any non-conflicting WFXML/attribute at all
##other - - any non-conflicting WFXML/attribute from
namespace other than targetNS
##local - - any unqualified non-conflicting WFXML/attribute
one or - - any non-conflicting WFXML/attribute from
more URI the listed namespaces
references
(space separated)
##targetNamespace or ##local may appear in the above list, to
refer to the targetNamespace of the enclosing
schema or an absent targetNamespace respectively</xs:documentation>
</xs:annotation>
<xs:simpleType name="namespaceList">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="##any"/>
<xs:enumeration value="##other"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:list>
<xs:simpleType>
<xs:union memberTypes="xs:anyURI">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="##targetNamespace"/>
<xs:enumeration value="##local"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:list>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:element name="attribute" type="xs:topLevelAttribute" id="attribute">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attribute"/>
</xs:annotation>
</xs:element>
<xs:complexType name="attributeGroup" abstract="true">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:group ref="xs:attrDecls"/>
<xs:attributeGroup ref="xs:defRef"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="namedAttributeGroup">
<xs:complexContent>
<xs:restriction base="xs:attributeGroup">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:attrDecls"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:NCName"/>
<xs:attribute name="ref" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="attributeGroupRef">
<xs:complexContent>
<xs:restriction base="xs:attributeGroup">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="ref" use="required" type="xs:QName"/>
<xs:attribute name="name" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="attributeGroup" type="xs:namedAttributeGroup" id="attributeGroup">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-attributeGroup"/>
</xs:annotation>
</xs:element>
<xs:element name="include" id="include">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-include"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="redefine" id="redefine">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-redefine"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:openAttrs">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="xs:annotation"/>
<xs:group ref="xs:redefinable"/>
</xs:choice>
<xs:attribute name="schemaLocation" type="xs:anyURI" use="required"/>
<xs:attribute name="id" type="xs:ID"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="import" id="import">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-import"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="namespace" type="xs:anyURI"/>
<xs:attribute name="schemaLocation" type="xs:anyURI"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="selector" id="selector">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-selector"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="xpath" use="required">
<xs:simpleType>
<xs:annotation>
<xs:documentation>A subset of XPath expressions for use
in selectors</xs:documentation>
<xs:documentation>A utility type, not for public
use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:token">
<xs:annotation>
<xs:documentation>The following pattern is intended to allow XPath
expressions per the following EBNF:
Selector ::= Path ( '|' Path )*
Path ::= ('.//')? Step ( '/' Step )*
Step ::= '.' | NameTest
NameTest ::= QName | '*' | NCName ':' '*'
child:: is also allowed
</xs:documentation>
</xs:annotation>
<xs:pattern value="(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*(\|(\.//)?(((child::)?((\i\c*:)?(\i\c*|\*)))|\.)(/(((child::)?((\i\c*:)?(\i\c*|\*)))|\.))*)*">
</xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="field" id="field">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-field"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="xpath" use="required">
<xs:simpleType>
<xs:annotation>
<xs:documentation>A subset of XPath expressions for use
in fields</xs:documentation>
<xs:documentation>A utility type, not for public
use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:token">
<xs:annotation>
<xs:documentation>The following pattern is intended to allow XPath
expressions per the same EBNF as for selector,
with the following change:
Path ::= ('.//')? ( Step '/' )* ( Step | '@' NameTest )
</xs:documentation>
</xs:annotation>
<xs:pattern value="(\.//)?((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)/)*((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)|((attribute::|@)((\i\c*:)?(\i\c*|\*))))(\|(\.//)?((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)/)*((((child::)?((\i\c*:)?(\i\c*|\*)))|\.)|((attribute::|@)((\i\c*:)?(\i\c*|\*)))))*">
</xs:pattern>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="keybase">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:element ref="xs:selector"/>
<xs:element ref="xs:field" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="name" type="xs:NCName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:group name="identityConstraint">
<xs:annotation>
<xs:documentation>The three kinds of identity constraints, all with
type of or derived from 'keybase'.
</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element ref="xs:unique"/>
<xs:element ref="xs:key"/>
<xs:element ref="xs:keyref"/>
</xs:choice>
</xs:group>
<xs:element name="unique" type="xs:keybase" id="unique">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-unique"/>
</xs:annotation>
</xs:element>
<xs:element name="key" type="xs:keybase" id="key">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-key"/>
</xs:annotation>
</xs:element>
<xs:element name="keyref" id="keyref">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-keyref"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:keybase">
<xs:attribute name="refer" type="xs:QName" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="notation" id="notation">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-notation"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="name" type="xs:NCName" use="required"/>
<xs:attribute name="public" type="xs:public"/>
<xs:attribute name="system" type="xs:anyURI"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="public">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
<xs:documentation>
A public identifier, per ISO 8879</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:token"/>
</xs:simpleType>
<xs:element name="appinfo" id="appinfo">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-appinfo"/>
</xs:annotation>
<xs:complexType mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any processContents="lax"/>
</xs:sequence>
<xs:attribute name="source" type="xs:anyURI"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
</xs:element>
<xs:element name="documentation" id="documentation">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-documentation"/>
</xs:annotation>
<xs:complexType mixed="true">
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:any processContents="lax"/>
</xs:sequence>
<xs:attribute name="source" type="xs:anyURI"/>
<xs:attribute ref="xml:lang"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
</xs:element>
<xs:element name="annotation" id="annotation">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-1/#element-annotation"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="xs:openAttrs">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="xs:appinfo"/>
<xs:element ref="xs:documentation"/>
</xs:choice>
<xs:attribute name="id" type="xs:ID"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:annotation>
<xs:documentation>
notations for use within XML Schema schemas</xs:documentation>
</xs:annotation>
<!--
<xs:notation name="XMLSchemaStructures" public="structures" system="http://www.w3.org/2000/08/XMLSchema.xsd"/>
<xs:notation name="XML" public="REC-xml-19980210" system="http://www.w3.org/TR/1998/REC-xml-19980210"/>
-->
<xs:complexType name="anyType" mixed="true">
<xs:annotation>
<xs:documentation>
Not the real urType, but as close an approximation as we can
get in the XML representation</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute processContents="lax"/>
</xs:complexType>
<xs:annotation>
<xs:documentation>
First the built-in primitive datatypes. These definitions are for
information only, the real built-in definitions are magic.
</xs:documentation>
<xs:documentation>
For each built-in datatype in this schema (both primitive and
derived) can be uniquely addressed via a URI constructed
as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the datatype
For example, to address the int datatype, the URI is:
http://www.w3.org/2001/XMLSchema#int
Additionally, each facet definition element can be uniquely
addressed via a URI constructed as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the facet
For example, to address the maxInclusive facet, the URI is:
http://www.w3.org/2001/XMLSchema#maxInclusive
Additionally, each facet usage in a built-in datatype definition
can be uniquely addressed via a URI constructed as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the datatype, followed
by a period (".") followed by the name of the facet
For example, to address the usage of the maxInclusive facet in
the definition of int, the URI is:
http://www.w3.org/2001/XMLSchema#int.maxInclusive
</xs:documentation>
</xs:annotation>
<xs:simpleType name="string" id="string">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#string"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="preserve" id="string.preserve"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="boolean" id="boolean">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="finite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#boolean"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="boolean.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="float" id="float">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="total"/>
<hfp:hasProperty name="bounded" value="true"/>
<hfp:hasProperty name="cardinality" value="finite"/>
<hfp:hasProperty name="numeric" value="true"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#float"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="float.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="double" id="double">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="total"/>
<hfp:hasProperty name="bounded" value="true"/>
<hfp:hasProperty name="cardinality" value="finite"/>
<hfp:hasProperty name="numeric" value="true"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#double"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="double.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="decimal" id="decimal">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="totalDigits"/>
<hfp:hasFacet name="fractionDigits"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="total"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="true"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#decimal"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="decimal.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="duration" id="duration">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#duration"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="duration.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="dateTime" id="dateTime">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#dateTime"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="dateTime.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="time" id="time">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#time"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="time.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="date" id="date">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#date"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="date.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gYearMonth" id="gYearMonth">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#gYearMonth"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="gYearMonth.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gYear" id="gYear">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#gYear"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="gYear.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gMonthDay" id="gMonthDay">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#gMonthDay"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="gMonthDay.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gDay" id="gDay">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#gDay"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="gDay.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gMonth" id="gMonth">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="maxInclusive"/>
<hfp:hasFacet name="maxExclusive"/>
<hfp:hasFacet name="minInclusive"/>
<hfp:hasFacet name="minExclusive"/>
<hfp:hasProperty name="ordered" value="partial"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#gMonth"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="gMonth.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="hexBinary" id="hexBinary">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#binary"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="hexBinary.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="base64Binary" id="base64Binary">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#base64Binary"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="base64Binary.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="anyURI" id="anyURI">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#anyURI"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="anyURI.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="QName" id="QName">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#QName"/>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="QName.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NOTATION" id="NOTATION">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#NOTATION"/>
<xs:documentation>
NOTATION cannot be used directly in a schema; rather a type
must be derived from it by specifying at least one enumeration
facet whose value is the name of a NOTATION declared in the
schema.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:anySimpleType">
<xs:whiteSpace value="collapse" fixed="true" id="NOTATION.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:annotation>
<xs:documentation>
Now the derived primitive types
</xs:documentation>
</xs:annotation>
<xs:simpleType name="normalizedString" id="normalizedString">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#normalizedString"/>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:whiteSpace value="replace" id="normalizedString.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="token" id="token">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#token"/>
</xs:annotation>
<xs:restriction base="xs:normalizedString">
<xs:whiteSpace value="collapse" id="token.whiteSpace"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="language" id="language">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#language"/>
</xs:annotation>
<xs:restriction base="xs:token">
<xs:pattern value="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" id="language.pattern">
<xs:annotation>
<xs:documentation source="http://www.ietf.org/rfc/rfc3066.txt">
pattern specifies the content of section 2.12 of XML 1.0e2
and RFC 3066 (Revised version of RFC 1766).
</xs:documentation>
</xs:annotation>
</xs:pattern>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="IDREFS" id="IDREFS">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#IDREFS"/>
</xs:annotation>
<xs:restriction>
<xs:simpleType>
<xs:list itemType="xs:IDREF"/>
</xs:simpleType>
<xs:minLength value="1" id="IDREFS.minLength"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ENTITIES" id="ENTITIES">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#ENTITIES"/>
</xs:annotation>
<xs:restriction>
<xs:simpleType>
<xs:list itemType="xs:ENTITY"/>
</xs:simpleType>
<xs:minLength value="1" id="ENTITIES.minLength"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NMTOKEN" id="NMTOKEN">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#NMTOKEN"/>
</xs:annotation>
<xs:restriction base="xs:token">
<xs:pattern value="\c+" id="NMTOKEN.pattern">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/REC-xml#NT-Nmtoken">
pattern matches production 7 from the XML spec
</xs:documentation>
</xs:annotation>
</xs:pattern>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NMTOKENS" id="NMTOKENS">
<xs:annotation>
<xs:appinfo>
<hfp:hasFacet name="length"/>
<hfp:hasFacet name="minLength"/>
<hfp:hasFacet name="maxLength"/>
<hfp:hasFacet name="enumeration"/>
<hfp:hasFacet name="whiteSpace"/>
<hfp:hasFacet name="pattern"/>
<hfp:hasProperty name="ordered" value="false"/>
<hfp:hasProperty name="bounded" value="false"/>
<hfp:hasProperty name="cardinality" value="countably infinite"/>
<hfp:hasProperty name="numeric" value="false"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#NMTOKENS"/>
</xs:annotation>
<xs:restriction>
<xs:simpleType>
<xs:list itemType="xs:NMTOKEN"/>
</xs:simpleType>
<xs:minLength value="1" id="NMTOKENS.minLength"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Name" id="Name">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#Name"/>
</xs:annotation>
<xs:restriction base="xs:token">
<xs:pattern value="\i\c*" id="Name.pattern">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/REC-xml#NT-Name">
pattern matches production 5 from the XML spec
</xs:documentation>
</xs:annotation>
</xs:pattern>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NCName" id="NCName">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#NCName"/>
</xs:annotation>
<xs:restriction base="xs:Name">
<xs:pattern value="[\i-[:]][\c-[:]]*" id="NCName.pattern">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/REC-xml-names/#NT-NCName">
pattern matches production 4 from the Namespaces in XML spec
</xs:documentation>
</xs:annotation>
</xs:pattern>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ID" id="ID">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#ID"/>
</xs:annotation>
<xs:restriction base="xs:NCName"/>
</xs:simpleType>
<xs:simpleType name="IDREF" id="IDREF">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#IDREF"/>
</xs:annotation>
<xs:restriction base="xs:NCName"/>
</xs:simpleType>
<xs:simpleType name="ENTITY" id="ENTITY">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#ENTITY"/>
</xs:annotation>
<xs:restriction base="xs:NCName"/>
</xs:simpleType>
<xs:simpleType name="integer" id="integer">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#integer"/>
</xs:annotation>
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="0" fixed="true" id="integer.fractionDigits"/>
<xs:pattern value="[\-+]?[0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="nonPositiveInteger" id="nonPositiveInteger">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#nonPositiveInteger"/>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:maxInclusive value="0" id="nonPositiveInteger.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="negativeInteger" id="negativeInteger">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#negativeInteger"/>
</xs:annotation>
<xs:restriction base="xs:nonPositiveInteger">
<xs:maxInclusive value="-1" id="negativeInteger.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="long" id="long">
<xs:annotation>
<xs:appinfo>
<hfp:hasProperty name="bounded" value="true"/>
<hfp:hasProperty name="cardinality" value="finite"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#long"/>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:minInclusive value="-9223372036854775808" id="long.minInclusive"/>
<xs:maxInclusive value="9223372036854775807" id="long.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="int" id="int">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#int"/>
</xs:annotation>
<xs:restriction base="xs:long">
<xs:minInclusive value="-2147483648" id="int.minInclusive"/>
<xs:maxInclusive value="2147483647" id="int.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="short" id="short">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#short"/>
</xs:annotation>
<xs:restriction base="xs:int">
<xs:minInclusive value="-32768" id="short.minInclusive"/>
<xs:maxInclusive value="32767" id="short.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="byte" id="byte">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#byte"/>
</xs:annotation>
<xs:restriction base="xs:short">
<xs:minInclusive value="-128" id="byte.minInclusive"/>
<xs:maxInclusive value="127" id="byte.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="nonNegativeInteger" id="nonNegativeInteger">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#nonNegativeInteger"/>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0" id="nonNegativeInteger.minInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="unsignedLong" id="unsignedLong">
<xs:annotation>
<xs:appinfo>
<hfp:hasProperty name="bounded" value="true"/>
<hfp:hasProperty name="cardinality" value="finite"/>
</xs:appinfo>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#unsignedLong"/>
</xs:annotation>
<xs:restriction base="xs:nonNegativeInteger">
<xs:maxInclusive value="18446744073709551615" id="unsignedLong.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="unsignedInt" id="unsignedInt">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#unsignedInt"/>
</xs:annotation>
<xs:restriction base="xs:unsignedLong">
<xs:maxInclusive value="4294967295" id="unsignedInt.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="unsignedShort" id="unsignedShort">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#unsignedShort"/>
</xs:annotation>
<xs:restriction base="xs:unsignedInt">
<xs:maxInclusive value="65535" id="unsignedShort.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="unsignedByte" id="unsignedByte">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#unsignedByte"/>
</xs:annotation>
<xs:restriction base="xs:unsignedShort">
<xs:maxInclusive value="255" id="unsignedByte.maxInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="positiveInteger" id="positiveInteger">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#positiveInteger"/>
</xs:annotation>
<xs:restriction base="xs:nonNegativeInteger">
<xs:minInclusive value="1" id="positiveInteger.minInclusive"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="derivationControl">
<xs:annotation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="substitution"/>
<xs:enumeration value="extension"/>
<xs:enumeration value="restriction"/>
<xs:enumeration value="list"/>
<xs:enumeration value="union"/>
</xs:restriction>
</xs:simpleType>
<xs:group name="simpleDerivation">
<xs:choice>
<xs:element ref="xs:restriction"/>
<xs:element ref="xs:list"/>
<xs:element ref="xs:union"/>
</xs:choice>
</xs:group>
<xs:simpleType name="simpleDerivationSet">
<xs:annotation>
<xs:documentation>
#all or (possibly empty) subset of {restriction, union, list}
</xs:documentation>
<xs:documentation>
A utility type, not for public use</xs:documentation>
</xs:annotation>
<xs:union>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="#all"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType>
<xs:list>
<xs:simpleType>
<xs:restriction base="xs:derivationControl">
<xs:enumeration value="list"/>
<xs:enumeration value="union"/>
<xs:enumeration value="restriction"/>
</xs:restriction>
</xs:simpleType>
</xs:list>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<xs:complexType name="simpleType" abstract="true">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:group ref="xs:simpleDerivation"/>
<xs:attribute name="final" type="xs:simpleDerivationSet"/>
<xs:attribute name="name" type="xs:NCName">
<xs:annotation>
<xs:documentation>
Can be restricted to required or forbidden
</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="topLevelSimpleType">
<xs:complexContent>
<xs:restriction base="xs:simpleType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:simpleDerivation"/>
</xs:sequence>
<xs:attribute name="name" use="required" type="xs:NCName">
<xs:annotation>
<xs:documentation>
Required at the top level
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="localSimpleType">
<xs:complexContent>
<xs:restriction base="xs:simpleType">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
<xs:group ref="xs:simpleDerivation"/>
</xs:sequence>
<xs:attribute name="name" use="prohibited">
<xs:annotation>
<xs:documentation>
Forbidden when nested
</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="final" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="simpleType" type="xs:topLevelSimpleType" id="simpleType">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-simpleType"/>
</xs:annotation>
</xs:element>
<xs:group name="facets">
<xs:annotation>
<xs:documentation>
We should use a substitution group for facets, but
that's ruled out because it would allow users to
add their own, which we're not ready for yet.
</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element ref="xs:minExclusive"/>
<xs:element ref="xs:minInclusive"/>
<xs:element ref="xs:maxExclusive"/>
<xs:element ref="xs:maxInclusive"/>
<xs:element ref="xs:totalDigits"/>
<xs:element ref="xs:fractionDigits"/>
<xs:element ref="xs:length"/>
<xs:element ref="xs:minLength"/>
<xs:element ref="xs:maxLength"/>
<xs:element ref="xs:enumeration"/>
<xs:element ref="xs:whiteSpace"/>
<xs:element ref="xs:pattern"/>
</xs:choice>
</xs:group>
<xs:group name="simpleRestrictionModel">
<xs:sequence>
<xs:element name="simpleType" type="xs:localSimpleType" minOccurs="0"/>
<xs:group ref="xs:facets" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:group>
<xs:element name="restriction" id="restriction">
<xs:complexType>
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-restriction">
base attribute and simpleType child are mutually
exclusive, but one or other is required
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:group ref="xs:simpleRestrictionModel"/>
<xs:attribute name="base" type="xs:QName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="list" id="list">
<xs:complexType>
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-list">
itemType attribute and simpleType child are mutually
exclusive, but one or other is required
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:element name="simpleType" type="xs:localSimpleType" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="itemType" type="xs:QName" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="union" id="union">
<xs:complexType>
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-union">
memberTypes attribute must be non-empty or there must be
at least one simpleType child
</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:sequence>
<xs:element name="simpleType" type="xs:localSimpleType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="memberTypes" use="optional">
<xs:simpleType>
<xs:list itemType="xs:QName"/>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="facet">
<xs:complexContent>
<xs:extension base="xs:annotated">
<xs:attribute name="value" use="required"/>
<xs:attribute name="fixed" type="xs:boolean" use="optional" default="false"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="noFixedFacet">
<xs:complexContent>
<xs:restriction base="xs:facet">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="fixed" use="prohibited"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="minExclusive" id="minExclusive" type="xs:facet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-minExclusive"/>
</xs:annotation>
</xs:element>
<xs:element name="minInclusive" id="minInclusive" type="xs:facet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-minInclusive"/>
</xs:annotation>
</xs:element>
<xs:element name="maxExclusive" id="maxExclusive" type="xs:facet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-maxExclusive"/>
</xs:annotation>
</xs:element>
<xs:element name="maxInclusive" id="maxInclusive" type="xs:facet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-maxInclusive"/>
</xs:annotation>
</xs:element>
<xs:complexType name="numFacet">
<xs:complexContent>
<xs:restriction base="xs:facet">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="value" type="xs:nonNegativeInteger" use="required"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:element name="totalDigits" id="totalDigits">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-totalDigits"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:numFacet">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="value" type="xs:positiveInteger" use="required"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="fractionDigits" id="fractionDigits" type="xs:numFacet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-fractionDigits"/>
</xs:annotation>
</xs:element>
<xs:element name="length" id="length" type="xs:numFacet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-length"/>
</xs:annotation>
</xs:element>
<xs:element name="minLength" id="minLength" type="xs:numFacet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-minLength"/>
</xs:annotation>
</xs:element>
<xs:element name="maxLength" id="maxLength" type="xs:numFacet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-maxLength"/>
</xs:annotation>
</xs:element>
<xs:element name="enumeration" id="enumeration" type="xs:noFixedFacet">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-enumeration"/>
</xs:annotation>
</xs:element>
<xs:element name="whiteSpace" id="whiteSpace">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-whiteSpace"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:facet">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="value" use="required">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="preserve"/>
<xs:enumeration value="replace"/>
<xs:enumeration value="collapse"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="pattern" id="pattern">
<xs:annotation>
<xs:documentation source="http://www.w3.org/TR/xmlschema-2/#element-pattern"/>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:restriction base="xs:noFixedFacet">
<xs:sequence>
<xs:element ref="xs:annotation" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="value" type="xs:string" use="required"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>
================================================
FILE: soap-builder/src/main/resources/xsds/soapEncoding.xsd
================================================
<?xml version='1.0' encoding='UTF-8' ?>
<!-- Schema for the SOAP/1.1 encoding
This schema has been produced using W3C's SOAP Version 1.2 schema
found at:
http://www.w3.org/2001/06/soap-encoding
Copyright 2001 Martin Gudgin, Developmentor.
http://www.develop.co.uk
Changes made are the following:
- reverted namespace to http://schemas.xmlsoap.org/soap/encoding/
- reverted root to only allow 0 and 1 as lexical values
Further changes:
- removed default value from root attribute declaration - 20030314
Original copyright:
Copyright 2001 W3C (Massachusetts Institute of Technology,
Institut National de Recherche en Informatique et en Automatique,
Keio University). All Rights Reserved.
http://www.w3.org/Consortium/Legal/
This document is governed by the W3C Software License [1] as
described in the FAQ [2].
[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
[2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://schemas.xmlsoap.org/soap/encoding/"
targetNamespace="http://schemas.xmlsoap.org/soap/encoding/" >
<xs:attribute name="root" >
<xs:annotation>
<xs:documentation>
'root' can be used to distinguish serialization roots from other
elements that are present in a serialization but are not roots of
a serialized value graph
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base='xs:boolean'>
<xs:pattern value='0|1' />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup name="commonAttributes" >
<xs:annotation>
<xs:documentation>
Attributes common to all elements that function as accessors or
represent independent (multi-ref) values. The href attribute is
intended to be used in a manner like CONREF. That is, the element
content should be empty iff the href attribute appears
</xs:documentation>
</xs:annotation>
<xs:attribute name="id" type="xs:ID" />
<xs:attribute name="href" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:attributeGroup>
<!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. -->
<!-- Array attributes. Needed to give the type and dimensions of an array's contents, and the offset for partially-transmitted arrays. -->
<xs:simpleType name="arrayCoordinate" >
<xs:restriction base="xs:string" />
</xs:simpleType>
<xs:attribute name="arrayType" type="xs:string" />
<xs:attribute name="offset" type="tns:arrayCoordinate" />
<xs:attributeGroup name="arrayAttributes" >
<xs:attribute ref="tns:arrayType" />
<xs:attribute ref="tns:offset" />
</xs:attributeGroup>
<xs:attribute name="position" type="tns:arrayCoordinate" />
<xs:attributeGroup name="arrayMemberAttributes" >
<xs:attribute ref="tns:position" />
</xs:attributeGroup>
<xs:group name="Array" >
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
</xs:group>
<xs:element name="Array" type="tns:Array" />
<xs:complexType name="Array" >
<xs:annotation>
<xs:documentation>
'Array' is a complex type for accessors identified by position
</xs:documentation>
</xs:annotation>
<xs:group ref="tns:Array" minOccurs="0" />
<xs:attributeGroup ref="tns:arrayAttributes" />
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:complexType>
<!-- 'Struct' is a complex type for accessors identified by name.
Constraint: No element may be have the same name as any other,
nor may any element have a maxOccurs > 1. -->
<xs:element name="Struct" type="tns:Struct" />
<xs:group name="Struct" >
<xs:sequence>
<xs:any namespace="##any" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
</xs:sequence>
</xs:group>
<xs:complexType name="Struct" >
<xs:group ref="tns:Struct" minOccurs="0" />
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:complexType>
<!-- 'Base64' can be used to serialize binary data using base64 encoding
as defined in RFC2045 but without the MIME line length limitation. -->
<xs:simpleType name="base64" >
<xs:restriction base="xs:base64Binary" />
</xs:simpleType>
<!-- Element declarations corresponding to each of the simple types in the
XML Schemas Specification. -->
<xs:element name="duration" type="tns:duration" />
<xs:complexType name="duration" >
<xs:simpleContent>
<xs:extension base="xs:duration" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="dateTime" type="tns:dateTime" />
<xs:complexType name="dateTime" >
<xs:simpleContent>
<xs:extension base="xs:dateTime" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="NOTATION" type="tns:NOTATION" />
<xs:complexType name="NOTATION" >
<xs:simpleContent>
<xs:extension base="xs:QName" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="time" type="tns:time" />
<xs:complexType name="time" >
<xs:simpleContent>
<xs:extension base="xs:time" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="date" type="tns:date" />
<xs:complexType name="date" >
<xs:simpleContent>
<xs:extension base="xs:date" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gYearMonth" type="tns:gYearMonth" />
<xs:complexType name="gYearMonth" >
<xs:simpleContent>
<xs:extension base="xs:gYearMonth" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gYear" type="tns:gYear" />
<xs:complexType name="gYear" >
<xs:simpleContent>
<xs:extension base="xs:gYear" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gMonthDay" type="tns:gMonthDay" />
<xs:complexType name="gMonthDay" >
<xs:simpleContent>
<xs:extension base="xs:gMonthDay" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gDay" type="tns:gDay" />
<xs:complexType name="gDay" >
<xs:simpleContent>
<xs:extension base="xs:gDay" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gMonth" type="tns:gMonth" />
<xs:complexType name="gMonth" >
<xs:simpleContent>
<xs:extension base="xs:gMonth" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="boolean" type="tns:boolean" />
<xs:complexType name="boolean" >
<xs:simpleContent>
<xs:extension base="xs:boolean" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="base64Binary" type="tns:base64Binary" />
<xs:complexType name="base64Binary" >
<xs:simpleContent>
<xs:extension base="xs:base64Binary" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="hexBinary" type="tns:hexBinary" />
<xs:complexType name="hexBinary" >
<xs:simpleContent>
<xs:extension base="xs:hexBinary" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="float" type="tns:float" />
<xs:complexType name="float" >
<xs:simpleContent>
<xs:extension base="xs:float" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="double" type="tns:double" />
<xs:complexType name="double" >
<xs:simpleContent>
<xs:extension base="xs:double" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="anyURI" type="tns:anyURI" />
<xs:complexType name="anyURI" >
<xs:simpleContent>
<xs:extension base="xs:anyURI" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="QName" type="tns:QName" />
<xs:complexType name="QName" >
<xs:simpleContent>
<xs:extension base="xs:QName" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="string" type="tns:string" />
<xs:complexType name="string" >
<xs:simpleContent>
<xs:extension base="xs:string" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="normalizedString" type="tns:normalizedString" />
<xs:complexType name="normalizedString" >
<xs:simpleContent>
<xs:extension base="xs:normalizedString" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="token" type="tns:token" />
<xs:complexType name="token" >
<xs:simpleContent>
<xs:extension base="xs:token" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="language" type="tns:language" />
<xs:complexType name="language" >
<xs:simpleContent>
<xs:extension base="xs:language" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="Name" type="tns:Name" />
<xs:complexType name="Name" >
<xs:simpleContent>
<xs:extension base="xs:Name" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="NMTOKEN" type="tns:NMTOKEN" />
<xs:complexType name="NMTOKEN" >
<xs:simpleContent>
<xs:extension base="xs:NMTOKEN" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="NCName" type="tns:NCName" />
<xs:complexType name="NCName" >
<xs:simpleContent>
<xs:extension base="xs:NCName" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="NMTOKENS" type="tns:NMTOKENS" />
<xs:complexType name="NMTOKENS" >
<xs:simpleContent>
<xs:extension base="xs:NMTOKENS" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="ID" type="tns:ID" />
<xs:complexType name="ID" >
<xs:simpleContent>
<xs:extension base="xs:ID" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="IDREF" type="tns:IDREF" />
<xs:complexType name="IDREF" >
<xs:simpleContent>
<xs:extension base="xs:IDREF" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="ENTITY" type="tns:ENTITY" />
<xs:complexType name="ENTITY" >
<xs:simpleContent>
<xs:extension base="xs:ENTITY" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="IDREFS" type="tns:IDREFS" />
<xs:complexType name="IDREFS" >
<xs:simpleContent>
<xs:extension base="xs:IDREFS" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="ENTITIES" type="tns:ENTITIES" />
<xs:complexType name="ENTITIES" >
<xs:simpleContent>
<xs:extension base="xs:ENTITIES" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="decimal" type="tns:decimal" />
<xs:complexType name="decimal" >
<xs:simpleContent>
<xs:extension base="xs:decimal" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="integer" type="tns:integer" />
<xs:complexType name="integer" >
<xs:simpleContent>
<xs:extension base="xs:integer" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="nonPositiveInteger" type="tns:nonPositiveInteger" />
<xs:complexType name="nonPositiveInteger" >
<xs:simpleContent>
<xs:extension base="xs:nonPositiveInteger" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="negativeInteger" type="tns:negativeInteger" />
<xs:complexType name="negativeInteger" >
<xs:simpleContent>
<xs:extension base="xs:negativeInteger" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="long" type="tns:long" />
<xs:complexType name="long" >
<xs:simpleContent>
<xs:extension base="xs:long" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="int" type="tns:int" />
<xs:complexType name="int" >
<xs:simpleContent>
<xs:extension base="xs:int" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="short" type="tns:short" />
<xs:complexType name="short" >
<xs:simpleContent>
<xs:extension base="xs:short" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="byte" type="tns:byte" />
<xs:complexType name="byte" >
<xs:simpleContent>
<xs:extension base="xs:byte" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="nonNegativeInteger" type="tns:nonNegativeInteger" />
<xs:complexType name="nonNegativeInteger" >
<xs:simpleContent>
<xs:extension base="xs:nonNegativeInteger" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="unsignedLong" type="tns:unsignedLong" />
<xs:complexType name="unsignedLong" >
<xs:simpleContent>
<xs:extension base="xs:unsignedLong" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="unsignedInt" type="tns:unsignedInt" />
<xs:complexType name="unsignedInt" >
<xs:simpleContent>
<xs:extension base="xs:unsignedInt" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="unsignedShort" type="tns:unsignedShort" />
<xs:complexType name="unsignedShort" >
<xs:simpleContent>
<xs:extension base="xs:unsignedShort" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="unsignedByte" type="tns:unsignedByte" />
<xs:complexType name="unsignedByte" >
<xs:simpleContent>
<xs:extension base="xs:unsignedByte" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="positiveInteger" type="tns:positiveInteger" />
<xs:complexType name="positiveInteger" >
<xs:simpleContent>
<xs:extension base="xs:positiveInteger" >
<xs:attributeGroup ref="tns:commonAttributes" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="anyType" />
</xs:schema>
================================================
FILE: soap-builder/src/main/resources/xsds/soapEncoding12.xsd
================================================
<!-- Schema defined in the SOAP Version 1.2 Part 2 specification
Proposed Recommendation:
http://www.w3.org/TR/2003/PR-soap12-part2-20030507/
$Id$
Copyright (C)2003 W3C(R) (MIT, ERCIM, Keio), All Rights Reserved.
W3C viability, trademark, document use and software licensing rules
apply.
http://www.w3.org/Consortium/Legal/
This document is governed by the W3C Software License [1] as
described in the FAQ [2].
[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
[2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.w3.org/2003/05/soap-encoding" targetNamespace="http://www.w3.org/2003/05/soap-encoding">
<xs:attributeGroup name="commonAttributes">
<xs:annotation>
<xs:documentation>
Attributes common to all elements that function as accessors or
represent independent (multi-ref) values. The ref attribute is
intended to be used in a manner like CONREF. That is, the element
content should be empty iff the ref attribute appears
</xs:documentation>
</xs:annotation>
<xs:attribute ref="tns:id"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:attributeGroup>
<!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. -->
<xs:attribute name="id" type="xs:ID"/>
<xs:attribute name="ref" type="xs:IDREF"/>
<xs:complexType name="Ref">
<xs:attribute ref="tns:ref" use="required"/>
</xs:complexType>
<xs:simpleType name="nodeType">
<xs:restriction base="xs:token">
<xs:enumeration value="simple"/>
<xs:enumeration value="struct"/>
<xs:enumeration value="array"/>
</xs:restriction>
</xs:simpleType>
<xs:attribute name="nodeType" type="tns:nodeType"/>
<!-- Array attributes. Needed to give the type and dimensions of an array"s contents, and the offset for partially-transmitted arrays. -->
<xs:simpleType name="arraySizeBase">
<xs:annotation>
<xs:documentation>
A list type that allows * and non negative integers. Used as the
base type for arraySize below.
</xs:documentation>
</xs:annotation>
<xs:list>
<xs:simpleType>
<xs:union memberTypes="xs:nonNegativeInteger">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="*"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
</xs:list>
</xs:simpleType>
<xs:simpleType name="arraySize">
<xs:annotation>
<xs:documentation>
Pattern based restriction of the arraySizeBase list type. Used
as the type of the arraySize attribute. Restricts asterisk ( * )
to first list item only. Instances must contain at least an
asterisk ( * ) or a nonNegativeInteger. May contain other
nonNegativeIntegers as subsequent list items.
Valid instances include;
*
1
* 2
2 2
* 2 0
</xs:documentation>
</xs:annotation>
<xs:restriction base="tns:arraySizeBase">
<xs:pattern value="(\*|(\d+))(\s+\d+)*"/>
</xs:restriction>
</xs:simpleType>
<xs:attribute name="arraySize" type="tns:arraySize"/>
<xs:attribute name="itemType" type="xs:QName"/>
<xs:attributeGroup name="arrayAttributes">
<xs:attribute ref="tns:arraySize"/>
<xs:attribute ref="tns:itemType"/>
</xs:attributeGroup>
<!-- 'Base64' can be used to serialize binary data using base64 encoding
as defined in RFC2045 but without the MIME line length limitation. -->
<xs:simpleType name="base64">
<xs:restriction base="xs:base64Binary"/>
</xs:simpleType>
<!-- Element declarations corresponding to each of the simple types in the
XML Schemas Specification. -->
<xs:element name="duration" type="tns:duration"/>
<xs:complexType name="duration">
<xs:simpleContent>
<xs:extension base="xs:duration">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="dateTime" type="tns:dateTime"/>
<xs:complexType name="dateTime">
<xs:simpleContent>
<xs:extension base="xs:dateTime">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="time" type="tns:time"/>
<xs:complexType name="time">
<xs:simpleContent>
<xs:extension base="xs:time">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="date" type="tns:date"/>
<xs:complexType name="date">
<xs:simpleContent>
<xs:extension base="xs:date">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gYearMonth" type="tns:gYearMonth"/>
<xs:complexType name="gYearMonth">
<xs:simpleContent>
<xs:extension base="xs:gYearMonth">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gYear" type="tns:gYear"/>
<xs:complexType name="gYear">
<xs:simpleContent>
<xs:extension base="xs:gYear">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gMonthDay" type="tns:gMonthDay"/>
<xs:complexType name="gMonthDay">
<xs:simpleContent>
<xs:extension base="xs:gMonthDay">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gDay" type="tns:gDay"/>
<xs:complexType name="gDay">
<xs:simpleContent>
<xs:extension base="xs:gDay">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="gMonth" type="tns:gMonth"/>
<xs:complexType name="gMonth">
<xs:simpleContent>
<xs:extension base="xs:gMonth">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="boolean" type="tns:boolean"/>
<xs:complexType name="boolean">
<xs:simpleContent>
<xs:extension base="xs:boolean">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="base64Binary" type="tns:base64Binary"/>
<xs:complexType name="base64Binary">
<xs:simpleContent>
<xs:extension base="xs:base64Binary">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="hexBinary" type="tns:hexBinary"/>
<xs:complexType name="hexBinary">
<xs:simpleContent>
<xs:extension base="xs:hexBinary">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="float" type="tns:float"/>
<xs:complexType name="float">
<xs:simpleContent>
<xs:extension base="xs:float">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="double" type="tns:double"/>
<xs:complexType name="double">
<xs:simpleContent>
<xs:extension base="xs:double">
<xs:attributeGroup ref="tns:commonAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:element name="anyURI" type="tns:anyURI"/>
<xs:complexType name="anyURI">
<xs:simpleContent>
<xs:extension base="xs:anyURI">
<xs:attributeGroup ref="tns:commonAttributes"/>
gitextract_cqglr56k/
├── .gitignore
├── .travis.yml
├── README.md
├── pom.xml
├── soap-builder/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── builder/
│ │ │ ├── SoapBuilder.java
│ │ │ ├── SoapBuilderFinder.java
│ │ │ ├── SoapOperation.java
│ │ │ ├── SoapOperationBuilder.java
│ │ │ ├── SoapOperationFinder.java
│ │ │ └── core/
│ │ │ ├── SoapBuilderImpl.java
│ │ │ ├── SoapOperationFinderImpl.java
│ │ │ ├── SoapOperationImpl.java
│ │ │ ├── SoapUtils.java
│ │ │ └── Wsdl.java
│ │ └── resources/
│ │ └── xsds/
│ │ ├── XMLSchema.xsd
│ │ ├── soapEncoding.xsd
│ │ ├── soapEncoding12.xsd
│ │ ├── soapEnvelope.xsd
│ │ ├── soapEnvelope12.xsd
│ │ ├── swaref.xsd
│ │ ├── xmime200411.xsd
│ │ ├── xmime200505.xsd
│ │ ├── xml.xsd
│ │ └── xop.xsd
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── builder/
│ │ ├── DefinitionSaveTest.java
│ │ ├── MessageComplianceTest.java
│ │ ├── ServiceComplianceTest.java
│ │ ├── SoapBuilderImplTest.java
│ │ ├── SoapOperationFinderImplTest.java
│ │ └── WsdlTest.java
│ └── resources/
│ ├── builder/
│ │ └── snowboard.wsdl
│ ├── log4j.xml
│ ├── messages/
│ │ ├── EmptyFault11.xml
│ │ ├── EmptyFault12.xml
│ │ ├── EmptyMessage11.xml
│ │ ├── EmptyMessage12.xml
│ │ ├── FaultVersionMismatch11.xml
│ │ └── FaultVersionMismatch12.xml
│ ├── services/
│ │ ├── test01/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test02/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test03/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test04/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test05/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test06/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test07/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test08/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── Copy.request.xml
│ │ │ │ │ ├── Copy.response.xml
│ │ │ │ │ ├── Delete.request.xml
│ │ │ │ │ ├── Delete.response.xml
│ │ │ │ │ ├── DeleteChildren.request.xml
│ │ │ │ │ ├── DeleteChildren.response.xml
│ │ │ │ │ ├── DeleteVersion.request.xml
│ │ │ │ │ ├── DeleteVersion.response.xml
│ │ │ │ │ ├── FindPagesWithCriteria.request.xml
│ │ │ │ │ ├── FindPagesWithCriteria.response.xml
│ │ │ │ │ ├── GetChildren.request.xml
│ │ │ │ │ ├── GetChildren.response.xml
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ ├── GetPage.response.xml
│ │ │ │ │ ├── Move.request.xml
│ │ │ │ │ ├── Move.response.xml
│ │ │ │ │ ├── Ping.request.xml
│ │ │ │ │ ├── Ping.response.xml
│ │ │ │ │ ├── Save.request.xml
│ │ │ │ │ └── Save.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── testservice2.xsd
│ │ │ └── xsds/
│ │ │ └── testservice1.xsd
│ │ ├── test09/
│ │ │ ├── TestService.wsdl
│ │ │ ├── common.xsd
│ │ │ ├── one.xsd
│ │ │ ├── operations/
│ │ │ │ ├── Binding/
│ │ │ │ │ ├── Operation.request.xml
│ │ │ │ │ └── Operation.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── two.xsd
│ │ ├── test10/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── TestServiceSoap/
│ │ │ │ │ ├── GetDefaultPageData.request.xml
│ │ │ │ │ ├── GetDefaultPageData.response.xml
│ │ │ │ │ ├── GetPage.request.xml
│ │ │ │ │ └── GetPage.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ ├── readme.txt
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test11/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── ADEC_MAST_Binding/
│ │ │ │ │ ├── doGetSummary.request.xml
│ │ │ │ │ └── doGetSummary.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test12/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── IncrementServicePTSOAPBinding/
│ │ │ │ │ ├── process.request.xml
│ │ │ │ │ └── process.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test13/
│ │ │ ├── TestService.wsdl
│ │ │ ├── chameleon.xsd
│ │ │ ├── operations/
│ │ │ │ ├── LinkageServiceSOAPBinding/
│ │ │ │ │ ├── addToSocialGroup.request.xml
│ │ │ │ │ ├── addToSocialGroup.response.xml
│ │ │ │ │ ├── createLink.request.xml
│ │ │ │ │ ├── createLink.response.xml
│ │ │ │ │ ├── createSocialGroup.request.xml
│ │ │ │ │ ├── createSocialGroup.response.xml
│ │ │ │ │ ├── readGroups.request.xml
│ │ │ │ │ └── readGroups.response.xml
│ │ │ │ ├── PersonaServiceSOAPBinding/
│ │ │ │ │ ├── deletePersona.request.xml
│ │ │ │ │ ├── deletePersona.response.xml
│ │ │ │ │ ├── readPersona.request.xml
│ │ │ │ │ ├── readPersona.response.xml
│ │ │ │ │ ├── readPersonas.request.xml
│ │ │ │ │ ├── readPersonas.response.xml
│ │ │ │ │ ├── storePersona.request.xml
│ │ │ │ │ └── storePersona.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── readme.txt
│ │ ├── test14/
│ │ │ ├── TestService.wsdl
│ │ │ └── operations/
│ │ │ ├── MakeFriendsSoapBinding/
│ │ │ │ ├── makeFriend.request.xml
│ │ │ │ └── makeFriend.response.xml
│ │ │ └── soap-version.txt
│ │ ├── test15/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ ├── GetLastTradePrice.response.xml
│ │ │ │ │ ├── GetLastTradePrice2.request.xml
│ │ │ │ │ └── GetLastTradePrice2.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ ├── test16/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ └── GetLastTradePrice.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ ├── test17/
│ │ │ ├── TestService.wsdl
│ │ │ ├── operations/
│ │ │ │ ├── StockQuoteSoapBinding/
│ │ │ │ │ ├── GetLastTradePrice.request.xml
│ │ │ │ │ ├── GetLastTradePrice.response.xml
│ │ │ │ │ ├── GetLastTradePrice2.request.xml
│ │ │ │ │ └── GetLastTradePrice2.response.xml
│ │ │ │ └── soap-version.txt
│ │ │ └── stockquote-schema.xsd
│ │ └── test18/
│ │ ├── TestService.wsdl
│ │ └── operations/
│ │ ├── HelloWorldSoap/
│ │ │ ├── SayHelloWorld.request.xml
│ │ │ └── SayHelloWorld.response.xml
│ │ ├── HelloWorldSoap12/
│ │ │ ├── SayHelloWorld.request.xml
│ │ │ └── SayHelloWorld.response.xml
│ │ └── soap-version.txt
│ └── wsdl/
│ ├── TestService.wsdl
│ ├── testservice1.xsd
│ └── testservice2.xsd
├── soap-client/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── client/
│ │ ├── SoapClientException.java
│ │ ├── TransmissionException.java
│ │ ├── core/
│ │ │ ├── Security.java
│ │ │ ├── SecurityFactory.java
│ │ │ ├── SoapClient.java
│ │ │ ├── SoapClientFactory.java
│ │ │ └── SoapConstants.java
│ │ └── ssl/
│ │ ├── MultiX509TrustManager.java
│ │ └── SSLUtils.java
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── client/
│ │ └── SimpleClientTest.java
│ └── resources/
│ └── log4j.xml
├── soap-common/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ ├── SoapBuilderException.java
│ │ ├── SoapContext.java
│ │ ├── SoapException.java
│ │ ├── SoapMultiValuesProvider.java
│ │ ├── SoapValidationException.java
│ │ ├── annotation/
│ │ │ └── ThreadSafe.java
│ │ └── common/
│ │ ├── FileWriter.java
│ │ ├── ResourceUtils.java
│ │ ├── SimpleValuesProvider.java
│ │ ├── Wsdl11Writer.java
│ │ └── XmlUtils.java
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── common/
│ │ ├── ResourceLoaderTest.java
│ │ ├── ResourceUtilsTest.java
│ │ └── XmlComparator.java
│ └── resources/
│ ├── my folder/
│ │ └── resource.txt
│ └── org/
│ └── reficio/
│ └── ws/
│ └── common/
│ └── test/
│ └── soapEncoding.xsd
├── soap-examples/
│ ├── arquillian/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── test/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── arquillian/
│ │ │ ├── Greeter.java
│ │ │ ├── GreeterTest.java
│ │ │ └── README.txt
│ │ └── resources/
│ │ ├── log4j.xml
│ │ └── wsdl/
│ │ └── currency-convertor.wsdl
│ ├── pom.xml
│ ├── quickstart/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── test/
│ │ ├── groovy/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── quickstart/
│ │ │ └── QuickStart.groovy
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── quickstart/
│ │ │ ├── SoapClientExamplesTest.java
│ │ │ ├── SoapServerExamplesTest.java
│ │ │ └── SpringExampleTest.java
│ │ └── resources/
│ │ ├── applicationContext.xml
│ │ ├── log4j.xml
│ │ └── wsdl/
│ │ ├── currency-convertor.wsdl
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-service.wsdl
│ └── testing/
│ ├── pom.xml
│ └── src/
│ └── test/
│ ├── groovy/
│ │ └── org/
│ │ └── reficio/
│ │ └── sample/
│ │ ├── BankService.groovy
│ │ ├── BankServiceImpl.groovy
│ │ ├── testing/
│ │ │ ├── BalanceClientPlainTest.groovy
│ │ │ ├── BalanceClientSpringTest.groovy
│ │ │ └── ConverterServerTest.groovy
│ │ └── util/
│ │ └── ExampleUtils.groovy
│ └── resources/
│ ├── applicationContext.xml
│ ├── log4j.xml
│ └── wsdl/
│ └── currency-convertor.wsdl
├── soap-it/
│ ├── pom.xml
│ └── src/
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── it/
│ │ ├── AbstractCooperationTest.java
│ │ ├── HttpCooperationTest.java
│ │ ├── HttpProxyHttpCooperationTest.java
│ │ ├── HttpProxyHttpsCooperationTest.java
│ │ ├── HttpsCooperationTest.java
│ │ ├── HttpsProxyHttpCooperationTest.java
│ │ ├── HttpsProxyHttpsCooperationTest.java
│ │ └── util/
│ │ ├── ClientBuilder.java
│ │ ├── SslTunnel.java
│ │ └── TestUtils.java
│ └── resources/
│ ├── keystores/
│ │ ├── multi-cert-keystore/
│ │ │ ├── .keystore
│ │ │ └── gen.sh
│ │ └── single-cert-keystore/
│ │ ├── .keystore_1
│ │ ├── .keystore_2
│ │ └── gen.sh
│ ├── log4j.xml
│ ├── services/
│ │ ├── test01/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test02/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test03/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test04/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test05/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test06/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test07/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ └── xsds/
│ │ │ ├── sub/
│ │ │ │ └── testservice2.xsd
│ │ │ └── testservice1.xsd
│ │ ├── test08/
│ │ │ ├── TestService.wsdl
│ │ │ └── wsdls/
│ │ │ ├── TestBinding.wsdl
│ │ │ ├── testservice2.xsd
│ │ │ └── xsds/
│ │ │ └── testservice1.xsd
│ │ ├── test09/
│ │ │ ├── TestService.wsdl
│ │ │ ├── common.xsd
│ │ │ ├── one.xsd
│ │ │ └── two.xsd
│ │ ├── test10/
│ │ │ ├── TestService.wsdl
│ │ │ ├── testservice1.xsd
│ │ │ └── testservice2.xsd
│ │ ├── test11/
│ │ │ └── TestService.wsdl
│ │ ├── test12/
│ │ │ └── TestService.wsdl
│ │ ├── test13/
│ │ │ ├── TestService.wsdl
│ │ │ └── chameleon.xsd
│ │ ├── test14/
│ │ │ └── TestService.wsdl
│ │ ├── test15/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test16/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test17/
│ │ │ ├── TestService.wsdl
│ │ │ └── stockquote-schema.xsd
│ │ ├── test18/
│ │ │ └── TestService.wsdl
│ │ ├── test19/
│ │ │ └── TestService.wsdl
│ │ ├── test20/
│ │ │ └── TestService.wsdl
│ │ ├── test22/
│ │ │ └── TestService.wsdl
│ │ ├── test23/
│ │ │ └── TestService.wsdl
│ │ ├── test25/
│ │ │ ├── TestService.wsdl
│ │ │ └── info.txt
│ │ ├── test26/
│ │ │ └── TestService.wsdl
│ │ └── test27/
│ │ ├── TestService.wsdl
│ │ └── info.txt
│ └── wsdl/
│ ├── doc.literal/
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-ws.wsdl
│ ├── rpc.encoded/
│ │ ├── friend-ws.wsdl
│ │ ├── stockquote-schema.xsd
│ │ └── stockquote-ws.wsdl
│ └── rpc.literal/
│ ├── stockquote-schema.xsd
│ └── stockquote-ws.wsdl
├── soap-legacy/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── legacy/
│ │ ├── AbstractSoapVersion.java
│ │ ├── Constants.java
│ │ ├── DefinitionLoader.java
│ │ ├── SampleXmlUtil.java
│ │ ├── SchemaDefinitionWrapper.java
│ │ ├── SchemaLoader.java
│ │ ├── SchemaUtils.java
│ │ ├── SoapLegacyFacade.java
│ │ ├── SoapMessageBuilder.java
│ │ ├── SoapVersion.java
│ │ ├── SoapVersion11.java
│ │ ├── SoapVersion12.java
│ │ ├── UrlSchemaLoader.java
│ │ ├── WsdlContext.java
│ │ ├── WsdlSettings.java
│ │ ├── WsdlUtils.java
│ │ ├── WsdlValidator.java
│ │ └── XmlUtils.java
│ └── resources/
│ ├── license.txt
│ └── xsds/
│ ├── XMLSchema.xsd
│ ├── soapEncoding.xsd
│ ├── soapEncoding12.xsd
│ ├── soapEnvelope.xsd
│ ├── soapEnvelope12.xsd
│ ├── swaref.xsd
│ ├── xmime200411.xsd
│ ├── xmime200505.xsd
│ ├── xml.xsd
│ └── xop.xsd
├── soap-server/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── server/
│ │ │ ├── OperationNotFoundException.java
│ │ │ ├── ServiceRegistrationException.java
│ │ │ ├── SoapServerException.java
│ │ │ ├── core/
│ │ │ │ ├── SoapServer.java
│ │ │ │ ├── SoapServerConstants.java
│ │ │ │ └── SoapServerFactory.java
│ │ │ ├── endpoint/
│ │ │ │ ├── ContextEndpointAdapter.java
│ │ │ │ ├── ContextPayloadEndpoint.java
│ │ │ │ ├── GenericContextDomEndpoint.java
│ │ │ │ ├── GenericEndpointMapping.java
│ │ │ │ └── GenericSoapMessage.java
│ │ │ ├── matcher/
│ │ │ │ ├── AggregatingVisitor.java
│ │ │ │ ├── BindingOperationVisitor.java
│ │ │ │ └── SoapOperationMatcher.java
│ │ │ ├── protocol/
│ │ │ │ ├── GenericSoapMessageFactory.java
│ │ │ │ ├── SimpleSoapProtocolChooser.java
│ │ │ │ └── SoapProtocolChooser.java
│ │ │ └── responder/
│ │ │ ├── AbstractResponder.java
│ │ │ ├── AutoResponder.java
│ │ │ └── RequestResponder.java
│ │ └── resources/
│ │ ├── soap-server.xml
│ │ └── soap-servlet.xml
│ └── test/
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── server/
│ │ ├── PasswordLessKeystoreTest.java
│ │ └── SimpleServerTest.java
│ └── resources/
│ ├── keystores/
│ │ ├── .keystore
│ │ ├── gen.sh
│ │ └── keyless.keystore
│ └── log4j.xml
├── soap-test/
│ ├── pom.xml
│ └── src/
│ ├── main/
│ │ ├── groovy/
│ │ │ └── org/
│ │ │ └── reficio/
│ │ │ └── ws/
│ │ │ └── test/
│ │ │ └── spock/
│ │ │ ├── Server.groovy
│ │ │ └── ServerExtension.groovy
│ │ └── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ ├── ServerProcessor.java
│ │ └── junit/
│ │ ├── Server.java
│ │ └── SoapRule.java
│ └── test/
│ ├── groovy/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ └── spock/
│ │ └── SpockExtensionTest.groovy
│ ├── java/
│ │ └── org/
│ │ └── reficio/
│ │ └── ws/
│ │ └── test/
│ │ └── junit/
│ │ └── SoapRuleTest.java
│ └── resources/
│ ├── log4j.xml
│ └── wsdl/
│ ├── TestService.wsdl
│ ├── currency-convertor.wsdl
│ ├── testservice1.xsd
│ └── testservice2.xsd
└── src/
├── main/
│ └── resources/
│ ├── findbugs-exclude.xml
│ └── license.txt
└── site/
├── fml/
│ └── faq.fml
└── site.xml
SYMBOL INDEX (1090 symbols across 97 files)
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilder.java
type SoapBuilder (line 31) | public interface SoapBuilder {
method getOperations (line 33) | List<SoapOperation> getOperations();
method operation (line 35) | SoapOperationFinder operation();
method getContext (line 37) | SoapContext getContext();
method getOperationBuilder (line 39) | SoapOperationBuilder getOperationBuilder(SoapOperation operation);
method buildInputMessage (line 41) | String buildInputMessage(SoapOperation operation);
method buildInputMessage (line 43) | String buildInputMessage(SoapOperation operation, SoapContext context);
method buildOutputMessage (line 45) | String buildOutputMessage(SoapOperation operation);
method buildOutputMessage (line 47) | String buildOutputMessage(SoapOperation operation, SoapContext context);
method buildFault (line 49) | String buildFault(String code, String message);
method buildFault (line 51) | String buildFault(String code, String message, SoapContext context);
method buildEmptyFault (line 53) | String buildEmptyFault();
method buildEmptyFault (line 55) | String buildEmptyFault(SoapContext context);
method buildEmptyMessage (line 57) | String buildEmptyMessage();
method buildEmptyMessage (line 59) | String buildEmptyMessage(SoapContext context);
method getBindingName (line 61) | QName getBindingName();
method getBinding (line 63) | Binding getBinding();
method getServiceUrls (line 65) | List<String> getServiceUrls();
method validateInputMessage (line 67) | void validateInputMessage(SoapOperation operation, String message);
method validateInputMessage (line 69) | void validateInputMessage(SoapOperation operation, String message, boo...
method validateOutputMessage (line 71) | void validateOutputMessage(SoapOperation operation, String message);
method validateOutputMessage (line 73) | void validateOutputMessage(SoapOperation operation, String message, bo...
method isRpc (line 75) | boolean isRpc();
method isInputSoapEncoded (line 77) | boolean isInputSoapEncoded(SoapOperation operation);
method isOutputSoapEncoded (line 79) | boolean isOutputSoapEncoded(SoapOperation operation);
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilderFinder.java
type SoapBuilderFinder (line 30) | public interface SoapBuilderFinder {
method name (line 32) | SoapBuilderFinder name(String name);
method name (line 34) | SoapBuilderFinder name(QName name);
method namespaceURI (line 36) | SoapBuilderFinder namespaceURI(String namespaceURI);
method localPart (line 38) | SoapBuilderFinder localPart(String localPart);
method prefix (line 40) | SoapBuilderFinder prefix(String prefix);
method find (line 42) | SoapBuilder find();
method find (line 44) | SoapBuilder find(SoapContext context);
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperation.java
type SoapOperation (line 29) | public interface SoapOperation {
method getBindingName (line 31) | QName getBindingName();
method getOperationName (line 33) | String getOperationName();
method getOperationInputName (line 35) | String getOperationInputName();
method getOperationOutputName (line 37) | String getOperationOutputName();
method getSoapAction (line 39) | String getSoapAction();
method isRpc (line 41) | boolean isRpc();
method isInputSoapEncoded (line 43) | boolean isInputSoapEncoded();
method isOutputSoapEncoded (line 45) | boolean isOutputSoapEncoded();
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationBuilder.java
type SoapOperationBuilder (line 27) | public interface SoapOperationBuilder extends SoapOperation {
method setContext (line 29) | void setContext(SoapContext context);
method getContext (line 31) | SoapContext getContext();
method buildInputMessage (line 33) | String buildInputMessage();
method buildInputMessage (line 35) | String buildInputMessage(SoapContext context);
method buildOutputMessage (line 37) | String buildOutputMessage();
method buildOutputMessage (line 39) | String buildOutputMessage(SoapContext context);
method buildFault (line 41) | String buildFault(String code, String message);
method buildFault (line 43) | String buildFault(String code, String message, SoapContext context);
method buildEmptyFault (line 45) | String buildEmptyFault();
method buildEmptyFault (line 47) | String buildEmptyFault(SoapContext context);
method buildEmptyMessage (line 49) | String buildEmptyMessage();
method buildEmptyMessage (line 51) | String buildEmptyMessage(SoapContext context);
method validateInputMessage (line 53) | void validateInputMessage(String message);
method validateInputMessage (line 55) | void validateInputMessage(String message, boolean strict);
method validateOutputMessage (line 57) | void validateOutputMessage(String message);
method validateOutputMessage (line 59) | void validateOutputMessage(String message, boolean strict);
FILE: soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationFinder.java
type SoapOperationFinder (line 27) | public interface SoapOperationFinder {
method name (line 29) | SoapOperationFinder name(String operationName);
method soapAction (line 31) | SoapOperationFinder soapAction(String soapAction);
method inputName (line 33) | SoapOperationFinder inputName(String inputName);
method outputName (line 35) | SoapOperationFinder outputName(String inputName);
method find (line 37) | SoapOperationBuilder find();
method find (line 39) | SoapOperationBuilder find(SoapContext context);
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapBuilderImpl.java
class SoapBuilderImpl (line 43) | class SoapBuilderImpl implements SoapBuilder {
method SoapBuilderImpl (line 50) | SoapBuilderImpl(SoapLegacyFacade soapFacade, Binding binding, SoapCont...
method initializeServiceUrls (line 58) | @SuppressWarnings("unchecked")
method getBindingOperation (line 70) | public BindingOperation getBindingOperation(SoapOperation op) {
method getOperations (line 79) | @Override
method getContext (line 89) | @Override
method getOperationBuilder (line 94) | @Override
method operation (line 100) | @Override
method buildInputMessage (line 105) | @Override
method buildInputMessage (line 110) | @Override
method buildOutputMessage (line 119) | @Override
method buildOutputMessage (line 124) | @Override
method buildFault (line 133) | @Override
method buildFault (line 138) | @Override
method buildEmptyFault (line 143) | @Override
method buildEmptyFault (line 148) | @Override
method buildEmptyMessage (line 153) | @Override
method buildEmptyMessage (line 158) | @Override
method getBindingName (line 163) | @Override
method getBinding (line 168) | @Override
method getServiceUrls (line 173) | @Override
method validateInputMessage (line 178) | @Override
method validateInputMessage (line 184) | @Override
method validateOutputMessage (line 190) | @Override
method validateOutputMessage (line 196) | @Override
method isRpc (line 202) | @Override
method isInputSoapEncoded (line 207) | @Override
method isOutputSoapEncoded (line 212) | @Override
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationFinderImpl.java
class SoapOperationFinderImpl (line 37) | class SoapOperationFinderImpl implements SoapOperationFinder {
method SoapOperationFinderImpl (line 47) | SoapOperationFinderImpl(SoapBuilder builder, Binding binding) {
method name (line 52) | @Override
method soapAction (line 59) | @Override
method inputName (line 66) | @Override
method outputName (line 73) | @Override
method find (line 80) | @Override
method find (line 104) | @Override
method validateInput (line 111) | private void validateInput() {
method checkOperationName (line 122) | private boolean checkOperationName(BindingOperation op) {
method checkSoapAction (line 129) | private boolean checkSoapAction(BindingOperation op) {
method checkOperationInputName (line 136) | private boolean checkOperationInputName(BindingOperation op) {
method checkOperationOutputName (line 143) | private boolean checkOperationOutputName(BindingOperation op) {
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationImpl.java
class SoapOperationImpl (line 34) | class SoapOperationImpl implements SoapOperation, SoapOperationBuilder {
method SoapOperationImpl (line 44) | SoapOperationImpl(SoapBuilder builder, QName bindingName, String opera...
method getBindingName (line 56) | public QName getBindingName() {
method getOperationName (line 60) | public String getOperationName() {
method getOperationInputName (line 64) | public String getOperationInputName() {
method getOperationOutputName (line 68) | public String getOperationOutputName() {
method getSoapAction (line 72) | public String getSoapAction() {
method isRpc (line 76) | @Override
method isInputSoapEncoded (line 81) | @Override
method isOutputSoapEncoded (line 86) | @Override
method create (line 91) | static SoapOperationBuilder create(SoapBuilder builder, Binding bindin...
method create (line 96) | static SoapOperationBuilder create(SoapBuilder builder, Binding bindin...
method toString (line 103) | public String toString() {
method setContext (line 108) | @Override
method getContext (line 113) | @Override
method buildInputMessage (line 118) | @Override
method buildInputMessage (line 123) | @Override
method buildOutputMessage (line 128) | @Override
method buildOutputMessage (line 133) | @Override
method buildFault (line 138) | @Override
method buildFault (line 143) | @Override
method buildEmptyFault (line 148) | @Override
method buildEmptyFault (line 153) | @Override
method buildEmptyMessage (line 158) | @Override
method buildEmptyMessage (line 163) | @Override
method validateInputMessage (line 168) | @Override
method validateInputMessage (line 173) | @Override
method validateOutputMessage (line 178) | @Override
method validateOutputMessage (line 183) | @Override
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/SoapUtils.java
class SoapUtils (line 35) | public class SoapUtils {
method normalizeSoapAction (line 38) | public static String normalizeSoapAction(String soapAction) {
method getSOAPActionUri (line 49) | public static String getSOAPActionUri(BindingOperation operation) {
method createOperation (line 66) | public static SoapOperationBuilder createOperation(SoapBuilder builder...
FILE: soap-builder/src/main/java/org/reficio/ws/builder/core/Wsdl.java
class Wsdl (line 42) | public final class Wsdl {
method Wsdl (line 47) | private Wsdl(URL wsdlUrl) {
method parse (line 56) | public static Wsdl parse(URL wsdlUrl) {
method parse (line 61) | public static Wsdl parse(String wsdlUrl) {
method getBindings (line 70) | public List<QName> getBindings() {
method binding (line 74) | public SoapBuilderFinder binding() {
method saveWsdl (line 78) | public URL saveWsdl(File rootWsdl) {
method saveWsdl (line 82) | public static URL saveWsdl(URL wsdlUrl, File rootWsdl) {
method printBindings (line 86) | public void printBindings() {
class SoapBuilderFinderImpl (line 93) | class SoapBuilderFinderImpl implements SoapBuilderFinder {
method SoapBuilderFinderImpl (line 94) | SoapBuilderFinderImpl() {
method name (line 101) | @Override
method name (line 106) | @Override
method namespaceURI (line 114) | @Override
method localPart (line 120) | @Override
method prefix (line 126) | @Override
method find (line 132) | @Override
method find (line 138) | @Override
method getBindingName (line 144) | private QName getBindingName() {
method validate (line 170) | private void validate() {
method getBuilder (line 177) | public SoapBuilder getBuilder(String bindingName) {
method getBuilder (line 181) | public SoapBuilder getBuilder(String bindingName, SoapContext context) {
method getBuilder (line 186) | public SoapBuilder getBuilder(QName bindingName) {
method getBuilder (line 190) | public SoapBuilder getBuilder(QName bindingName, SoapContext context) {
FILE: soap-builder/src/test/java/org/reficio/ws/builder/DefinitionSaveTest.java
class DefinitionSaveTest (line 43) | public class DefinitionSaveTest {
method getServiceFolder (line 45) | public static File getServiceFolder(int serviceId) {
method createTempFolder (line 55) | public static File createTempFolder(String name) throws IOException {
method getGeneratedFolder (line 66) | public static File getGeneratedFolder(int serviceId) throws WSDLExcept...
method getFileNames (line 83) | public static List<String> getFileNames(File folder) {
method findFile (line 94) | public static File findFile(File folder, String name) {
method testDefinitionSave (line 104) | public static void testDefinitionSave(int serviceId) {
method testDefinitionSaveService (line 135) | @Test
FILE: soap-builder/src/test/java/org/reficio/ws/builder/MessageComplianceTest.java
class MessageComplianceTest (line 40) | public class MessageComplianceTest {
method getContent (line 44) | public static String getContent(String folderPath, String fileName) {
method testEmptyFaultSoap11 (line 67) | @Test
method testEmptyFaultSoap12 (line 75) | @Test
method testFaultSoap11 (line 83) | @Test
method testFaultSoap12 (line 91) | @Test
method testEmptyMessageSoap11 (line 99) | @Test
method testEmptyMessageSoap12 (line 107) | @Test
FILE: soap-builder/src/test/java/org/reficio/ws/builder/ServiceComplianceTest.java
class ServiceComplianceTest (line 47) | public class ServiceComplianceTest {
type MessageType (line 51) | enum MessageType {REQUEST, RESPONSE}
method getTestServiceFolderPath (line 53) | public static String getTestServiceFolderPath(int testServiceId) {
method getDefinitionUrl (line 58) | public static URL getDefinitionUrl(int testServiceId) {
method getDefinition (line 64) | public static Definition getDefinition(URL wsdlUrl) throws WSDLExcepti...
method getExpectedMessage (line 70) | public static String getExpectedMessage(int testServiceId, String bind...
method getExpectedRequest (line 88) | public static String getExpectedRequest(int testServiceId, String bind...
method getExpectedResponse (line 92) | public static String getExpectedResponse(int testServiceId, String bin...
method testService (line 97) | @SuppressWarnings("unchecked")
method testService01 (line 135) | @Test
method testService02 (line 140) | @Test
method testService03 (line 145) | @Test
method testService04 (line 150) | @Test
method testService05 (line 155) | @Test
method testService06 (line 160) | @Test
method testService07 (line 165) | @Test
method testService08 (line 170) | @Test
method testService09 (line 175) | @Test
method testService10 (line 180) | @Test
method testService11 (line 185) | @Test
method testService12 (line 190) | @Test
method testService13 (line 195) | @Test
method testService14 (line 200) | @Test
method testService15 (line 205) | @Test
method testService16 (line 210) | @Test
method testService17 (line 215) | @Test
method testService18 (line 220) | @Test
FILE: soap-builder/src/test/java/org/reficio/ws/builder/SoapBuilderImplTest.java
class SoapBuilderImplTest (line 30) | public class SoapBuilderImplTest {
method testLoadSnowboard_Bug_851 (line 32) | @Test
FILE: soap-builder/src/test/java/org/reficio/ws/builder/SoapOperationFinderImplTest.java
class SoapOperationFinderImplTest (line 30) | public class SoapOperationFinderImplTest {
method operation (line 32) | public SoapOperationFinder operation() {
method testFinderNoArguments (line 39) | @Test(expected = IllegalArgumentException.class)
method testFinderWrongArgument (line 44) | @Test(expected = NullPointerException.class)
method testFinderNoOperation (line 49) | @Test(expected = SoapBuilderException.class)
method testFindOk (line 54) | @Test
method testFindNameOkWrongAction (line 59) | @Test(expected = SoapBuilderException.class)
FILE: soap-builder/src/test/java/org/reficio/ws/builder/WsdlTest.java
class WsdlTest (line 36) | public class WsdlTest {
method testParseNullUrl (line 38) | @Test(expected = NullPointerException.class)
method testParseWrongUrl (line 43) | @Test(expected = SoapBuilderException.class)
method testParseTestWsdl (line 50) | @Test
method testParseTestWsdlNullContext (line 67) | @Test(expected = NullPointerException.class)
method testParseTestWsdlProperContext (line 75) | @Test
FILE: soap-client/src/main/java/org/reficio/ws/client/SoapClientException.java
class SoapClientException (line 29) | public class SoapClientException extends SoapException {
method SoapClientException (line 30) | public SoapClientException(String message) {
method SoapClientException (line 34) | public SoapClientException(String message, Throwable cause) {
method SoapClientException (line 38) | public SoapClientException(Throwable cause) {
FILE: soap-client/src/main/java/org/reficio/ws/client/TransmissionException.java
class TransmissionException (line 27) | public class TransmissionException extends SoapClientException {
method TransmissionException (line 32) | public TransmissionException(String message) {
method TransmissionException (line 38) | public TransmissionException(String message, Throwable ex) {
method TransmissionException (line 44) | public TransmissionException(String response, Integer errorCode) {
method getErrorResponse (line 50) | public String getErrorResponse() {
method getErrorCode (line 54) | public Integer getErrorCode() {
FILE: soap-client/src/main/java/org/reficio/ws/client/core/Security.java
class Security (line 39) | public class Security {
method getTrustStore (line 62) | public KeyStore getTrustStore() {
method getTrustStorePassword (line 66) | public char[] getTrustStorePassword() {
method getTrustStorePasswordAsString (line 70) | public String getTrustStorePasswordAsString() {
method getTrustStoreType (line 74) | public String getTrustStoreType() {
method getKeyStore (line 78) | public KeyStore getKeyStore() {
method getKeyStorePassword (line 82) | public char[] getKeyStorePassword() {
method getKeyStorePasswordAsString (line 86) | public String getKeyStorePasswordAsString() {
method getKeyStoreType (line 90) | public String getKeyStoreType() {
method getAuthUsername (line 94) | public String getAuthUsername() {
method getAuthPassword (line 98) | public String getAuthPassword() {
method getAuthWorkstation (line 102) | public String getAuthWorkstation() {
method getAuthDomain (line 106) | public String getAuthDomain() {
method getAuthMethod (line 110) | public String getAuthMethod() {
method isAuthEnabled (line 114) | public boolean isAuthEnabled() {
method isAuthBasic (line 118) | public boolean isAuthBasic() {
method isAuthDigest (line 122) | public boolean isAuthDigest() {
method isAuthNtlm (line 126) | public boolean isAuthNtlm() {
method isAuthSpnego (line 130) | public boolean isAuthSpnego() {
method isStrictHostVerification (line 134) | public boolean isStrictHostVerification() {
method getSslContextProtocol (line 138) | public String getSslContextProtocol() {
method builder (line 145) | public static Builder builder() {
method Security (line 149) | private Security() {
class Builder (line 155) | public static class Builder {
method authBasic (line 177) | public Builder authBasic(String user, String password) {
method authDigest (line 184) | public Builder authDigest(String user, String password) {
method authNtlm (line 191) | public Builder authNtlm(String user, String password, String worksta...
method authSpnego (line 200) | public Builder authSpnego() {
method keyStore (line 209) | public Builder keyStore(KeyStore value) {
method keyStoreUrl (line 219) | public Builder keyStoreUrl(URL value) {
method keyStoreUrl (line 229) | public Builder keyStoreUrl(String value) {
method keyStoreType (line 243) | public Builder keyStoreType(String value) {
method keyStorePassword (line 253) | public Builder keyStorePassword(String value) {
method trustStore (line 264) | public Builder trustStore(KeyStore value) {
method trustStoreUrl (line 275) | public Builder trustStoreUrl(URL value) {
method trustStoreUrl (line 285) | public Builder trustStoreUrl(String value) {
method trustStoreType (line 299) | public Builder trustStoreType(String value) {
method trustStorePassword (line 309) | public Builder trustStorePassword(String value) {
method strictHostVerification (line 322) | public Builder strictHostVerification(boolean value) {
method sslContextProtocol (line 331) | public Builder sslContextProtocol(String value) {
method build (line 342) | public Security build() {
method initKeyStore (line 365) | private KeyStore initKeyStore(KeyStore keyStore, URL keyStoreUrl, St...
FILE: soap-client/src/main/java/org/reficio/ws/client/core/SecurityFactory.java
class SecurityFactory (line 32) | public class SecurityFactory {
method getTrustStore (line 53) | public KeyStore getTrustStore() {
method setTrustStore (line 57) | public void setTrustStore(KeyStore trustStore) {
method getTrustStorePassword (line 61) | public String getTrustStorePassword() {
method setTrustStorePassword (line 65) | public void setTrustStorePassword(String trustStorePassword) {
method getTrustStoreType (line 69) | public String getTrustStoreType() {
method setTrustStoreType (line 73) | public void setTrustStoreType(String trustStoreType) {
method getKeyStore (line 77) | public KeyStore getKeyStore() {
method setKeyStore (line 81) | public void setKeyStore(KeyStore keyStore) {
method getKeyStorePassword (line 85) | public String getKeyStorePassword() {
method setKeyStorePassword (line 89) | public void setKeyStorePassword(String keyStorePassword) {
method getKeyStoreType (line 93) | public String getKeyStoreType() {
method setKeyStoreType (line 97) | public void setKeyStoreType(String keyStoreType) {
method getAuthUsername (line 101) | public String getAuthUsername() {
method setAuthUsername (line 105) | public void setAuthUsername(String authUsername) {
method getAuthPassword (line 109) | public String getAuthPassword() {
method setAuthPassword (line 113) | public void setAuthPassword(String authPassword) {
method getAuthWorkstation (line 117) | public String getAuthWorkstation() {
method setAuthWorkstation (line 121) | public void setAuthWorkstation(String authWorkstation) {
method getAuthDomain (line 125) | public String getAuthDomain() {
method setAuthDomain (line 129) | public void setAuthDomain(String authDomain) {
method getAuthMethod (line 133) | public String getAuthMethod() {
method setAuthMethod (line 137) | public void setAuthMethod(String authMethod) {
method getStrictHostVerification (line 141) | public Boolean getStrictHostVerification() {
method setStrictHostVerification (line 145) | public void setStrictHostVerification(Boolean strictHostVerification) {
method getSslContextProtocol (line 149) | public String getSslContextProtocol() {
method setSslContextProtocol (line 153) | public void setSslContextProtocol(String sslContextProtocol) {
method create (line 157) | public Security create() {
method configureKeyStore (line 168) | private void configureKeyStore(Security.Builder builder) {
method configureTrustStore (line 183) | private void configureTrustStore(Security.Builder builder) {
method configureAuthentication (line 198) | private void configureAuthentication(Security.Builder builder) {
method configureTransport (line 213) | private void configureTransport(Security.Builder builder) {
FILE: soap-client/src/main/java/org/reficio/ws/client/core/SoapClient.java
class SoapClient (line 71) | @ThreadSafe
method post (line 102) | public String post(String requestEnvelope) {
method post (line 113) | public String post(String soapAction, String requestEnvelope) {
method disconnect (line 127) | public void disconnect() {
method generatePost (line 136) | private HttpPost generatePost(String soapAction, String requestEnvelop...
method transmit (line 159) | private String transmit(String soapAction, String data) {
method executePost (line 164) | private String executePost(HttpPost post) {
method initialize (line 189) | private void initialize() {
method configureClient (line 196) | private void configureClient() {
method configureAuthentication (line 204) | private void configureAuthentication() {
method configureAuthentication (line 209) | private void configureAuthentication(URI uri, Security security) {
method configureTls (line 227) | private void configureTls() {
method registerTlsScheme (line 248) | private void registerTlsScheme(SchemeLayeredSocketFactory factory, int...
method configureProxy (line 253) | private void configureProxy() {
method SoapClient (line 282) | private SoapClient() {
class Builder (line 288) | public static class Builder {
method endpointUri (line 305) | public Builder endpointUri(String value) {
method endpointUri (line 319) | public Builder endpointUri(URI value) {
method proxyUri (line 329) | public Builder proxyUri(String value) {
method proxyUri (line 343) | public Builder proxyUri(URI value) {
method endpointSecurity (line 349) | public Builder endpointSecurity(Security value) {
method proxySecurity (line 354) | public Builder proxySecurity(Security value) {
method readTimeoutInMillis (line 363) | public Builder readTimeoutInMillis(int value) {
method connectTimeoutInMillis (line 373) | public Builder connectTimeoutInMillis(int value) {
method build (line 384) | public SoapClient build() {
method initializeClient (line 388) | private SoapClient initializeClient() {
method builder (line 415) | public static Builder builder() {
FILE: soap-client/src/main/java/org/reficio/ws/client/core/SoapClientFactory.java
class SoapClientFactory (line 25) | public class SoapClientFactory {
method getEndpointUri (line 36) | public String getEndpointUri() {
method setEndpointUri (line 40) | public void setEndpointUri(String endpointUri) {
method getProxyUri (line 44) | public String getProxyUri() {
method setProxyUri (line 48) | public void setProxyUri(String proxyUri) {
method getReadTimeoutInMillis (line 52) | public Integer getReadTimeoutInMillis() {
method setReadTimeoutInMillis (line 56) | public void setReadTimeoutInMillis(Integer readTimeoutInMillis) {
method getConnectTimeoutInMillis (line 60) | public Integer getConnectTimeoutInMillis() {
method setConnectTimeoutInMillis (line 64) | public void setConnectTimeoutInMillis(Integer connectTimeoutInMillis) {
method getEndpointSecurity (line 68) | public Security getEndpointSecurity() {
method setEndpointSecurity (line 72) | public void setEndpointSecurity(Security endpointSecurity) {
method getProxySecurity (line 76) | public Security getProxySecurity() {
method setProxySecurity (line 80) | public void setProxySecurity(Security proxySecurity) {
method create (line 84) | public SoapClient create() {
FILE: soap-client/src/main/java/org/reficio/ws/client/core/SoapConstants.java
class SoapConstants (line 25) | final class SoapConstants {
method SoapConstants (line 27) | private SoapConstants() {
type AuthMethod (line 73) | public static enum AuthMethod {
FILE: soap-client/src/main/java/org/reficio/ws/client/ssl/MultiX509TrustManager.java
class MultiX509TrustManager (line 33) | public class MultiX509TrustManager implements X509TrustManager {
method MultiX509TrustManager (line 37) | public MultiX509TrustManager(List<X509TrustManager> managers) {
method checkClientTrusted (line 41) | @Override
method checkServerTrusted (line 56) | @Override
method getAcceptedIssuers (line 71) | @Override
FILE: soap-client/src/main/java/org/reficio/ws/client/ssl/SSLUtils.java
class SSLUtils (line 36) | public class SSLUtils {
method getTrustManager (line 38) | public static X509TrustManager getTrustManager(KeyStore trustStore) th...
method getKeyManager (line 44) | public static X509KeyManager getKeyManager(KeyStore keyStore, char[] k...
method getMultiTrustManager (line 50) | public static X509TrustManager getMultiTrustManager(X509TrustManager.....
method getMergedSocketFactory (line 58) | public static SSLSocketFactory getMergedSocketFactory(org.reficio.ws.c...
method getFactory (line 76) | public static SSLSocketFactory getFactory(Security security) throws Ge...
FILE: soap-client/src/test/java/org/reficio/ws/client/SimpleClientTest.java
class SimpleClientTest (line 33) | public class SimpleClientTest {
method connectTimeout (line 38) | @Ignore
FILE: soap-common/src/main/java/org/reficio/ws/SoapBuilderException.java
class SoapBuilderException (line 27) | public class SoapBuilderException extends SoapException {
method SoapBuilderException (line 28) | public SoapBuilderException(String message) {
method SoapBuilderException (line 32) | public SoapBuilderException(String message, Throwable cause) {
method SoapBuilderException (line 36) | public SoapBuilderException(Throwable cause) {
FILE: soap-common/src/main/java/org/reficio/ws/SoapContext.java
class SoapContext (line 31) | public class SoapContext {
method SoapContext (line 65) | public SoapContext(boolean exampleContent, boolean typeComments, boole...
method SoapContext (line 87) | public SoapContext(boolean exampleContent, boolean typeComments, boole...
method isBuildOptional (line 98) | public boolean isBuildOptional() {
method isAlwaysBuildHeaders (line 102) | public boolean isAlwaysBuildHeaders() {
method isExampleContent (line 106) | public boolean isExampleContent() {
method isTypeComments (line 110) | public boolean isTypeComments() {
method isValueComments (line 114) | public boolean isValueComments() {
method getExcludedTypes (line 118) | public Set<QName> getExcludedTypes() {
method getMultiValuesProvider (line 122) | public SoapMultiValuesProvider getMultiValuesProvider() {
method builder (line 126) | public static ContextBuilder builder() {
class ContextBuilder (line 130) | public static class ContextBuilder {
method exampleContent (line 145) | public ContextBuilder exampleContent(boolean value) {
method typeComments (line 156) | public ContextBuilder typeComments(boolean value) {
method valueComments (line 167) | public ContextBuilder valueComments(boolean value) {
method buildOptional (line 178) | public ContextBuilder buildOptional(boolean value) {
method alwaysBuildHeaders (line 189) | public ContextBuilder alwaysBuildHeaders(boolean value) {
method excludedTypes (line 203) | public ContextBuilder excludedTypes(Set<QName> excludedTypes) {
method multiValuesProvider (line 208) | public ContextBuilder multiValuesProvider(SoapMultiValuesProvider mu...
method build (line 218) | public SoapContext build() {
FILE: soap-common/src/main/java/org/reficio/ws/SoapException.java
class SoapException (line 27) | public class SoapException extends RuntimeException {
method SoapException (line 28) | public SoapException(String s) {
method SoapException (line 32) | public SoapException(String s, Throwable throwable) {
method SoapException (line 36) | public SoapException(Throwable throwable) {
FILE: soap-common/src/main/java/org/reficio/ws/SoapMultiValuesProvider.java
type SoapMultiValuesProvider (line 28) | public interface SoapMultiValuesProvider {
method getMultiValues (line 30) | Set<String> getMultiValues(QName name);
FILE: soap-common/src/main/java/org/reficio/ws/SoapValidationException.java
class SoapValidationException (line 30) | public class SoapValidationException extends SoapException {
method SoapValidationException (line 34) | public SoapValidationException(List<AssertionError> errors) {
method getErrors (line 39) | public List<AssertionError> getErrors() {
FILE: soap-common/src/main/java/org/reficio/ws/common/FileWriter.java
class FileWriter (line 30) | class FileWriter {
method createClassFile (line 43) | public File createClassFile(File rootLocation, String packageName, Str...
FILE: soap-common/src/main/java/org/reficio/ws/common/ResourceUtils.java
class ResourceUtils (line 36) | public class ResourceUtils {
method getResourceWithAbsolutePackagePath (line 38) | public static URL getResourceWithAbsolutePackagePath(String absolutePa...
class Path (line 42) | private static class Path {
method getFullPath (line 47) | private static String getFullPath(String resourcePath) {
method parsePath (line 57) | private static Path parsePath(String resourcePath) {
method getResource (line 65) | public static URL getResource(String resourcePath) {
method getResource (line 70) | public static URL getResource(Class<?> clazz, String resourcePath) {
method getResourceAsStream (line 75) | public static InputStream getResourceAsStream(String resourcePath) {
method getResourceAsStream (line 80) | public static InputStream getResourceAsStream(Class<?> clazz, String r...
method getResourceWithAbsolutePackagePath (line 85) | public static URL getResourceWithAbsolutePackagePath(Class<?> clazz, S...
method getResourceWithAbsolutePackagePathAsStream (line 102) | public static InputStream getResourceWithAbsolutePackagePathAsStream(S...
method getResourceWithAbsolutePackagePathAsStream (line 106) | public static InputStream getResourceWithAbsolutePackagePathAsStream(C...
method getResourcePath (line 122) | private static String getResourcePath(String absolutePackagePath, Stri...
method formatArgument (line 130) | private static String formatArgument(String argument) {
method constructResourcePath (line 135) | private static String constructResourcePath(String packagePath, String...
method removeLeadingUnixSeparators (line 143) | private static String removeLeadingUnixSeparators(String argument) {
FILE: soap-common/src/main/java/org/reficio/ws/common/SimpleValuesProvider.java
class SimpleValuesProvider (line 33) | public class SimpleValuesProvider implements SoapMultiValuesProvider {
method SimpleValuesProvider (line 37) | public SimpleValuesProvider() {
method SimpleValuesProvider (line 41) | public SimpleValuesProvider(Map<QName, Set<String>> multiValues) {
method getMultiValues (line 48) | @Override
method addMultiValues (line 54) | public void addMultiValues(QName name, Set<String> values) {
FILE: soap-common/src/main/java/org/reficio/ws/common/Wsdl11Writer.java
class Wsdl11Writer (line 49) | public class Wsdl11Writer {
method Wsdl11Writer (line 58) | public Wsdl11Writer(File baseFolder) {
method writeWSDL (line 63) | public void writeWSDL(String name, Definition definition) {
method writeWSDL (line 74) | @SuppressWarnings("unchecked")
method processSchemas (line 183) | private void processSchemas(Definition definition, Map<String, String>...
method processSchema (line 198) | private void processSchema(Definition definition, Schema schema, Strin...
method changeLocations (line 243) | private void changeLocations(Element element, Map<String, String> chan...
method processImport (line 254) | private void processImport(Node importNode, Map<String, String> change...
method normalizeName (line 270) | private String normalizeName(String name) {
FILE: soap-common/src/main/java/org/reficio/ws/common/XmlUtils.java
class XmlUtils (line 43) | public final class XmlUtils {
method XmlUtils (line 45) | private XmlUtils() {
method getNodeNames (line 48) | public static Set<String> getNodeNames(Set<Node> nodes) {
method getNodeTypes (line 56) | public static Set<QName> getNodeTypes(Set<Node> nodes) {
method getRootNodes (line 64) | public static Set<Node> getRootNodes(DOMSource request) {
method populateNodes (line 68) | public static Set<Node> populateNodes(Node node, Set<Node> nodes) {
method nodeToQName (line 78) | public static QName nodeToQName(Node node) {
method xmlStringToSource (line 82) | public static Source xmlStringToSource(String xmlString) {
method sourceToXmlString (line 100) | public static String sourceToXmlString(Source xmlSource) {
method serializePretty (line 119) | public static String serializePretty(Document document) {
method normalizeAndRemoveValues (line 138) | public static String normalizeAndRemoveValues(String xmlContent) {
method processNode (line 159) | public static void processNode(Node node) throws Exception {
method isIdenticalNormalizedWithoutValues (line 169) | public static boolean isIdenticalNormalizedWithoutValues(String expect...
FILE: soap-common/src/test/java/org/reficio/ws/common/ResourceLoaderTest.java
class ResourceLoaderTest (line 27) | public class ResourceLoaderTest {
method loadWithSystemClassloaderTest (line 29) | @Test
FILE: soap-common/src/test/java/org/reficio/ws/common/ResourceUtilsTest.java
class ResourceUtilsTest (line 32) | public class ResourceUtilsTest {
method testResourceLoading_failed (line 34) | @Test(expected = IllegalArgumentException.class)
method testResourceLoading_failed_noPackage (line 39) | @Test(expected = IllegalArgumentException.class)
method testResourceLoading_noLeadingTrailing (line 44) | @Test
method testResourceLoading_noLeadingTrailing_noPackage (line 50) | @Test
method testResourceLoading_noLeading (line 56) | @Test
method testResourceLoading_noLeading_noPackage (line 62) | @Test
method testResourceLoading_multipleLeading (line 68) | @Test
method testResourceLoading_multipleLeading_noPackage (line 74) | @Test
method testResourceLoadingNoTrailing (line 80) | @Test
method testResourceLoadingNoTrailing_noPackage (line 86) | @Test
method testResourceLoading_whiteSpaces (line 92) | @Test
method testResourceLoading_whiteSpaces_noPackage (line 98) | @Test
method testResourceLoading_multipleInner (line 104) | @Test
method testResourceLoading_multipleInner_noPackage (line 110) | @Test
method testResourceLoading_multipleTrailing (line 116) | @Test
method testResourceLoading_multipleTrailing_noPackage (line 122) | @Test
method testResourceLoading_notNormalized (line 128) | @Test
method testResourceLoading_notNormalized_noPackage (line 134) | @Test
method testResourceLoading_notNormalized_asStream (line 140) | @Test
method testResourceLoading_notNormalized_asStream_noPackage (line 146) | @Test
method testResourceLoadingObject (line 152) | @Test
method testResourceLoadingObject_noPackage (line 158) | @Test
method testResourceLoadingThis (line 164) | @Test
method testResourceLoadingThis_noPackage (line 170) | @Test
method testResourceLoadingGetClass (line 176) | @Test
method testResourceLoadingGetClass_noPackage (line 182) | @Test
method testResourceLoadingNoClass (line 188) | @Test
method testResourceLoadingNoClass_noPackage (line 194) | @Test
method testResourceLoadingNotNormalizedNoClass (line 200) | @Test
method testResourceLoadingNotNormalizedNoClass_noPackage (line 206) | @Test
method testResourceLoadingSpaceInTheResource (line 212) | @Test
method testResourceLoadingSpaceInTheResource_noPackage (line 218) | @Test
FILE: soap-common/src/test/java/org/reficio/ws/common/XmlComparator.java
class XmlComparator (line 38) | public class XmlComparator {
method diff (line 43) | public boolean diff(String xml1, String xml2, List<String> diffs) thro...
method diff (line 68) | public boolean diff(Node node1, Node node2, List<String> diffs) throws...
method diffNodes (line 92) | public boolean diffNodes(Node node1, Node node2, List<String> diffs) t...
method diffAttributes (line 124) | public boolean diffAttributes(Node node1, Node node2, List<String> dif...
method diffNodeExists (line 158) | public boolean diffNodeExists(Node node1, Node node2, List<String> dif...
method diffNodeType (line 180) | public boolean diffNodeType(Node node1, Node node2, List<String> diffs...
method diffNodeValue (line 192) | public boolean diffNodeValue(Node node1, Node node2, List<String> diff...
method getPath (line 219) | public String getPath(Node node) {
FILE: soap-examples/arquillian/src/test/java/org/reficio/ws/arquillian/Greeter.java
class Greeter (line 36) | public class Greeter {
method getConversionRate (line 38) | public String getConversionRate(String fromCurrency, String toCurrency...
method greet (line 57) | public void greet(PrintStream to, String name) {
method createGreeting (line 61) | public String createGreeting(String name) {
FILE: soap-examples/arquillian/src/test/java/org/reficio/ws/arquillian/GreeterTest.java
class GreeterTest (line 41) | @RunWith(Arquillian.class)
method createDeployment (line 47) | @Deployment
method should_create_greeting (line 57) | @Test
method getConversionRateSoapTest (line 70) | @Test
FILE: soap-examples/quickstart/src/test/java/org/reficio/ws/quickstart/SoapClientExamplesTest.java
class SoapClientExamplesTest (line 46) | public class SoapClientExamplesTest {
method startServer (line 56) | @BeforeClass
method stopServer (line 67) | @AfterClass
method getAutoResponderForTestService (line 72) | public static AutoResponder getAutoResponderForTestService() throws WS...
method invoke_tradePriceRequest_generatedMessages (line 84) | @Test
method invoke_tradePriceRequest_hardcodedMessages (line 111) | @Test
FILE: soap-examples/quickstart/src/test/java/org/reficio/ws/quickstart/SoapServerExamplesTest.java
class SoapServerExamplesTest (line 40) | public class SoapServerExamplesTest {
method createServer (line 42) | @Test
method createServer_registerAutoResponder (line 51) | @Test
method createServer_registerCustomResponder (line 67) | @Test
FILE: soap-examples/quickstart/src/test/java/org/reficio/ws/quickstart/SpringExampleTest.java
class SpringExampleTest (line 36) | @RunWith(SpringJUnit4ClassRunner.class)
method testInjection (line 51) | @Test
method testServerStarted (line 57) | @Test
method testRequestResponse (line 62) | @Test
FILE: soap-it/src/test/java/org/reficio/ws/it/AbstractCooperationTest.java
class AbstractCooperationTest (line 58) | public abstract class AbstractCooperationTest {
method getKeyStoreUrlOne (line 67) | protected static URL getKeyStoreUrlOne() {
method getKeyStoreUrlTwo (line 71) | protected static URL getKeyStoreUrlTwo() {
method getMultiKeyStoreUrl (line 75) | protected static URL getMultiKeyStoreUrl() {
method getKeyStorePassword (line 79) | protected String getKeyStorePassword() {
method verifyServiceBehavior (line 83) | protected void verifyServiceBehavior(int testServiceId, ClientBuilder ...
method verifyServiceBehavior (line 87) | protected void verifyServiceBehavior(int testServiceId) throws Excepti...
method verifyServiceBehavior (line 91) | protected void verifyServiceBehavior(int testServiceId, Boolean postSo...
method verifyServiceBehavior (line 113) | protected void verifyServiceBehavior(int testServiceId, Boolean postSo...
method testOperation (line 117) | private void testOperation(ClientBuilder clientBuilder, SoapBuilder so...
method registerHandler (line 151) | private void registerHandler(SoapServer server, int testServiceId, Wsd...
method formatEndpointAddress (line 155) | private String formatEndpointAddress(String contextPath) {
method postRequest (line 159) | private String postRequest(SoapClient client, String request) {
method postRequest (line 163) | private String postRequest(SoapClient client, String request, String s...
class ClientBuilderImpl (line 167) | class ClientBuilderImpl implements ClientBuilder {
method buildClient (line 168) | @Override
method readKeyStore (line 174) | protected KeyStore readKeyStore(URL keyStoreUrl, String keyStorePasswo...
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpCooperationTest.java
class HttpCooperationTest (line 36) | public class HttpCooperationTest extends AbstractCooperationTest {
method initializeServer (line 41) | @Before
method destroyServer (line 49) | @After
method testService1 (line 54) | @Test
method testService2 (line 59) | @Test
method testService3 (line 64) | @Test
method testService4 (line 69) | @Test
method testService5 (line 74) | @Test
method testService6 (line 79) | @Test
method testService7 (line 84) | @Test
method testService8 (line 89) | @Test
method testService9 (line 94) | @Test
method testService10 (line 99) | @Test
method testService11 (line 104) | @Test
method testService12 (line 109) | @Test
method testService13 (line 114) | @Test
method testService14 (line 119) | @Test
method testService15_noSoapAction (line 124) | @Test
method testService15_withSoapAction (line 136) | @Test
method testService16 (line 141) | @Test
method testService17 (line 146) | @Test
method testService18 (line 151) | @Test
method testService19 (line 156) | @Test
method testService20 (line 161) | @Test
method testService22 (line 166) | @Test
method testService23 (line 171) | @Test
method testService25 (line 183) | @Test
method testService26 (line 188) | @Test
method testService27 (line 196) | public void testService27() throws Exception {
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpProxyHttpCooperationTest.java
class HttpProxyHttpCooperationTest (line 41) | public class HttpProxyHttpCooperationTest extends AbstractCooperationTest {
method initializeServer (line 48) | @Before
method destroyServer (line 56) | @After
method initProxy (line 61) | public HttpProxyServer initProxy() {
method testService1_httpProxy_defaultProxySetting (line 67) | @Test
method testService1_httpProxy_directProxy (line 83) | @Test
method testService1_httpProxy_noAuthentication (line 99) | @Test
method testService1_httpProxy_basicAuthentication_success (line 116) | @Test
method testService1_httpProxy_basicAuthentication_failure (line 146) | @Test
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpProxyHttpsCooperationTest.java
class HttpProxyHttpsCooperationTest (line 42) | public class HttpProxyHttpsCooperationTest extends AbstractCooperationTe...
method initializeServer (line 49) | @Before
method destroyServer (line 59) | @After
method initProxy (line 64) | public HttpProxyServer initProxy() {
method testService1_httpProxy_defaultProxySetting (line 70) | @Test
method testService1_httpProxy_directProxy (line 92) | @Test
method testService1_httpProxy_noAuthentication (line 114) | @Test
method testService1_httpProxy_basicAuthentication_success (line 137) | @Test
method testService1_httpProxy_basicAuthentication_wrongKeystore_failure (line 172) | @Test
method testService1_httpProxy_basicAuthentication_failure (line 210) | @Test
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpsCooperationTest.java
class HttpsCooperationTest (line 44) | @RunWith(Parameterized.class)
method HttpsCooperationTest (line 52) | public HttpsCooperationTest(URL url) {
method keyStores (line 56) | @Parameterized.Parameters
method initializeServer (line 61) | @Before
method destroyServer (line 71) | @After
method testService1 (line 76) | @Test
method testService2 (line 81) | @Test
method testService2_wrongKeyStore_failure (line 86) | @Test
class HttpsClientBuilder (line 107) | private class HttpsClientBuilder implements ClientBuilder {
method buildClient (line 108) | @Override
method client (line 121) | private ClientBuilder client() {
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpsProxyHttpCooperationTest.java
class HttpsProxyHttpCooperationTest (line 45) | public class HttpsProxyHttpCooperationTest extends AbstractCooperationTe...
method initializeServer (line 52) | @Before
method destroyServer (line 60) | @After
method initProxy (line 65) | public HttpProxyServer initProxy() {
method testService1_httpsProxy_defaultProxySetting (line 71) | @Test
method testService1_httpsProxy_directProxy (line 87) | @Test
method testService1_httpsProxy_noAuthentication (line 103) | @Test
method testService1_httpProxy_basicAuthentication_success (line 133) | @Test
method testService1_httpProxy_basicAuthentication_failure (line 171) | @Test
method testService1_httpProxy_basicAuthentication_wrongKeystore_failure (line 212) | @Test
FILE: soap-it/src/test/java/org/reficio/ws/it/HttpsProxyHttpsCooperationTest.java
class HttpsProxyHttpsCooperationTest (line 47) | public class HttpsProxyHttpsCooperationTest extends AbstractCooperationT...
method initializeServer (line 59) | @Before
method destroyServer (line 76) | @After
method getProxy (line 87) | public HttpProxyServer getProxy() {
method proxySecurity (line 93) | private Security proxySecurity() {
method getProxyTunnel (line 101) | private SslTunnel getProxyTunnel() {
method endpointSecurity (line 107) | private Security endpointSecurity() {
method testService1_httpProxy_noAuthentication (line 127) | @Test
method testService1_httpsProxy_basicAuthentication_success (line 141) | @Test
method testService1_httpsProxy_basicAuthentication_failure (line 169) | @Test
FILE: soap-it/src/test/java/org/reficio/ws/it/util/ClientBuilder.java
type ClientBuilder (line 29) | public interface ClientBuilder {
method buildClient (line 30) | SoapClient buildClient(String endpointUrl);
FILE: soap-it/src/test/java/org/reficio/ws/it/util/SslTunnel.java
class SslTunnel (line 44) | public class SslTunnel {
method SslTunnel (line 62) | public SslTunnel(KeyStore keyStore, String keyStorePassword, int sourc...
method SslTunnel (line 71) | public SslTunnel(KeyStore keyStore, String keyStorePassword, KeyStore ...
method start (line 80) | public void start() {
class ServerThread (line 112) | class ServerThread extends Thread {
method ServerThread (line 116) | public ServerThread(ServerSocket server, AtomicBoolean run) {
method run (line 121) | public void run() {
method stop (line 141) | public void stop() {
class PipeThread (line 154) | class PipeThread extends Thread {
method PipeThread (line 158) | public PipeThread(Socket client, AtomicBoolean run) {
method run (line 163) | public void run() {
FILE: soap-it/src/test/java/org/reficio/ws/it/util/TestUtils.java
class TestUtils (line 42) | public class TestUtils {
method createParserForService (line 46) | public static Wsdl createParserForService(int testServiceId) throws WS...
method formatContextPath (line 54) | public static String formatContextPath(int testServiceId, QName bindin...
method getTestServiceFolderPath (line 58) | public static String getTestServiceFolderPath(int testServiceId) {
method formatServiceId (line 63) | public static String formatServiceId(int testServiceId) {
method registerService (line 67) | public static void registerService(SoapServer server, int testServiceI...
method registerService (line 72) | public static void registerService(SoapServer server, int testServiceI...
method registerAutoResponderForAllServiceBindings (line 76) | public static void registerAutoResponderForAllServiceBindings(SoapServ...
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/AbstractSoapVersion.java
class AbstractSoapVersion (line 54) | abstract class AbstractSoapVersion implements SoapVersion {
method validateSoapEnvelope (line 57) | @SuppressWarnings("unchecked")
method getSoapEnvelopeSchemaLoader (line 88) | protected abstract SchemaTypeLoader getSoapEnvelopeSchemaLoader();
method shouldIgnore (line 90) | public boolean shouldIgnore(XmlValidationError error) {
method getFaultType (line 103) | public abstract SchemaType getFaultType();
method getEnvelopeType (line 105) | public abstract SchemaType getEnvelopeType();
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/Constants.java
type Constants (line 48) | interface Constants {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/DefinitionLoader.java
type DefinitionLoader (line 43) | interface DefinitionLoader extends SchemaLoader {
method setProgressInfo (line 45) | void setProgressInfo(String info);
method isAborted (line 47) | boolean isAborted();
method abort (line 49) | boolean abort();
method setNewBaseURI (line 51) | void setNewBaseURI(String uri);
method getFirstNewURI (line 53) | String getFirstNewURI();
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SampleXmlUtil.java
class SampleXmlUtil (line 60) | class SampleXmlUtil {
method SampleXmlUtil (line 82) | public SampleXmlUtil(boolean soapEnc, SoapContext context) {
method isSoapEnc (line 92) | public boolean isSoapEnc() {
method createSample (line 96) | public String createSample(SchemaType sType) {
method createSampleForType (line 126) | public void createSampleForType(SchemaType stype, XmlCursor xmlc) {
method processSimpleType (line 180) | private void processSimpleType(SchemaType stype, XmlCursor xmlc) {
method sampleDataForSimpleType (line 192) | private String sampleDataForSimpleType(SchemaType sType) {
method pick (line 376) | private int pick(int n) {
method pick (line 380) | private String pick(String[] a) {
method pick (line 384) | private String pick(String[] a, int count) {
method pickDigits (line 401) | @SuppressWarnings("unused")
method pickLength (line 409) | private int pickLength(SchemaType sType) {
method formatToLength (line 441) | private String formatToLength(String s, SchemaType sType) {
method formatDecimal (line 466) | private String formatDecimal(String start, SchemaType sType) {
method formatDuration (line 569) | private String formatDuration(SchemaType sType) {
method formatDate (line 676) | private String formatDate(SchemaType sType) {
method closestBuiltin (line 873) | private SchemaType closestBuiltin(SchemaType sType) {
method crackQName (line 882) | public static QName crackQName(String qName) {
method processParticle (line 902) | private void processParticle(SchemaParticle sp, XmlCursor xmlc, boolea...
method determineMinMaxForSample (line 929) | private int determineMinMaxForSample(SchemaParticle sp, XmlCursor xmlc) {
method getItemNameOrType (line 972) | @SuppressWarnings("unused")
method processElement (line 983) | private void processElement(SchemaParticle sp, XmlCursor xmlc, boolean...
method moveToken (line 1017) | @SuppressWarnings("unused")
method formatQName (line 1028) | private static final String formatQName(XmlCursor xmlc, QName qName) {
method processAttributes (line 1050) | private void processAttributes(SchemaType stype, XmlCursor xmlc) {
method processSequence (line 1097) | private void processSequence(SchemaParticle sp, XmlCursor xmlc, boolea...
method processChoice (line 1108) | private void processChoice(SchemaParticle sp, XmlCursor xmlc, boolean ...
method processAll (line 1118) | private void processAll(SchemaParticle sp, XmlCursor xmlc, boolean mix...
method processWildCard (line 1130) | private void processWildCard(SchemaParticle sp, XmlCursor xmlc, boolea...
method getClosestName (line 1140) | @SuppressWarnings("unused")
method printParticleType (line 1148) | private String printParticleType(int particleType) {
method addElementTypeAndRestricionsComment (line 1177) | private void addElementTypeAndRestricionsComment(SchemaLocalElement el...
method setTypeComment (line 1203) | public void setTypeComment(boolean b) {
method setIgnoreOptional (line 1207) | public void setIgnoreOptional(boolean b) {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SchemaDefinitionWrapper.java
class SchemaDefinitionWrapper (line 52) | class SchemaDefinitionWrapper {
method SchemaDefinitionWrapper (line 58) | public SchemaDefinitionWrapper(Definition definition, String schemaURL) {
method getSchemaTypeLoader (line 63) | public SchemaTypeLoader getSchemaTypeLoader() {
method getSchemaTypeSystem (line 67) | public SchemaTypeSystem getSchemaTypeSystem() {
method hasSchemaTypes (line 71) | public boolean hasSchemaTypes() {
method getDefinedNamespaces (line 75) | public Collection<String> getDefinedNamespaces() throws Exception {
method getTargetNamespace (line 88) | public String getTargetNamespace() {
method findType (line 92) | public SchemaType findType(QName typeName) {
method loadSchemaTypes (line 96) | public void loadSchemaTypes(DefinitionLoader loader) {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SchemaLoader.java
type SchemaLoader (line 44) | interface SchemaLoader {
method loadXmlObject (line 45) | XmlObject loadXmlObject(String wsdlUrl, XmlOptions options) throws Exc...
method getBaseURI (line 47) | String getBaseURI();
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SchemaUtils.java
class SchemaUtils (line 60) | class SchemaUtils {
method loadResoruce (line 70) | public static URL loadResoruce(String resourceName) {
method initDefaultSchemas (line 75) | public static void initDefaultSchemas() {
method loadDefaultSchema (line 94) | private static void loadDefaultSchema(URL url) throws Exception {
method loadSchemaTypes (line 109) | public static SchemaTypeSystem loadSchemaTypes(String wsdlUrl, SchemaL...
method buildSchemaTypes (line 119) | public static SchemaTypeSystem buildSchemaTypes(List<XmlObject> schema...
method toNextContainer (line 205) | public static boolean toNextContainer(XmlCursor cursor) {
method getTargetNamespace (line 212) | public static String getTargetNamespace(XmlObject s) {
method getSchemas (line 216) | public static Map<String, XmlObject> getSchemas(String wsdlUrl, Schema...
method getSchemas (line 226) | public static void getSchemas(String wsdlUrl, Map<String, XmlObject> e...
method getDefinitionParts (line 377) | public static void getDefinitionParts(String origWsdlUrl, Map<String, ...
method joinRelativeUrl (line 399) | public static String joinRelativeUrl(String baseUrl, String url) {
method selectDefinitionParts (line 475) | private static void selectDefinitionParts(String wsdlUrl, Map<String, ...
method extractNamespaces (line 497) | public static Collection<String> extractNamespaces(SchemaTypeSystem sc...
method removeImports (line 517) | public static void removeImports(XmlObject xmlObject) throws XmlExcept...
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SoapLegacyFacade.java
class SoapLegacyFacade (line 38) | public class SoapLegacyFacade {
type Soap (line 40) | public static enum Soap {SOAP_1_1, SOAP_1_2}
method SoapLegacyFacade (line 46) | public SoapLegacyFacade(URL wsdlUrl) throws WSDLException {
method buildSoapMessageFromInput (line 50) | public String buildSoapMessageFromInput(Binding binding, BindingOperat...
method buildSoapMessageFromOutput (line 58) | public String buildSoapMessageFromOutput(Binding binding, BindingOpera...
method validateSoapRequestMessage (line 66) | public void validateSoapRequestMessage(Binding binding, BindingOperati...
method validateSoapResponseMessage (line 74) | public void validateSoapResponseMessage(Binding binding, BindingOperat...
method buildFault (line 82) | public String buildFault(String code, String message, Binding binding,...
method buildEmptyFault (line 86) | public String buildEmptyFault(Binding binding, SoapContext context) {
method buildEmptyMessage (line 90) | public String buildEmptyMessage(Binding binding, SoapContext context) {
method saveWsdl (line 94) | public URL saveWsdl(String rootFileName, File folder) {
method saveWsdl (line 98) | public static URL saveWsdl(URL wsdlUrl, String rootFileName, File fold...
method getBindingByName (line 106) | public Binding getBindingByName(QName bindingName) {
method getBindingNames (line 110) | public List<QName> getBindingNames() {
method buildEmptyMessage (line 114) | public static String buildEmptyMessage(SoapVersion soapVersion, SoapCo...
method buildEmptyFault (line 118) | public static String buildEmptyFault(SoapVersion soapVersion, SoapCont...
method buildFault (line 122) | public static String buildFault(String code, String message, SoapVersi...
method transformSoapVersion (line 126) | private static SoapVersion transformSoapVersion(Soap soapVersion) {
method buildEmptyMessage (line 134) | public static String buildEmptyMessage(Soap version, SoapContext conte...
method buildEmptyFault (line 138) | public static String buildEmptyFault(Soap version, SoapContext context) {
method buildFault (line 142) | public static String buildFault(Soap version, String code, String mess...
method isRpc (line 146) | public static boolean isRpc(Binding binding) {
method getSoapEndpoint (line 162) | public static String getSoapEndpoint(Port port) {
method getServices (line 166) | @SuppressWarnings("unchecked")
method isOutputSoapEncoded (line 171) | public boolean isOutputSoapEncoded(BindingOperation operation) {
method isInputSoapEncoded (line 175) | public boolean isInputSoapEncoded(BindingOperation operation) {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SoapMessageBuilder.java
class SoapMessageBuilder (line 76) | @ThreadSafe
method SoapMessageBuilder (line 95) | public SoapMessageBuilder(URL wsdlUrl) throws WSDLException {
method createAndSave (line 115) | public static SoapMessageBuilder createAndSave(URL wsdlUrl, File targe...
method saveDefinition (line 125) | private static void saveDefinition(String fileBaseName, Definition def...
method getSavedWsdlUrl (line 133) | private static URL getSavedWsdlUrl(String fileBaseName, File targetFol...
method saveWsdl (line 148) | public URL saveWsdl(String fileBaseName, File targetFolder) {
method saveWsdl (line 161) | public static URL saveWsdl(String fileBaseName, URL wsdlUrl, File targ...
method buildEmptyMessage (line 172) | public String buildEmptyMessage(QName bindingQName, SoapContext contex...
method buildEmptyMessage (line 176) | public String buildEmptyMessage(Binding binding, SoapContext context) {
method buildEmptyMessage (line 180) | public static String buildEmptyMessage(SoapVersion soapVersion, SoapCo...
method buildFault (line 188) | public static String buildFault(String faultcode, String faultstring, ...
method buildFault (line 204) | public String buildFault(String faultcode, String faultstring, QName b...
method buildFault (line 208) | public String buildFault(String faultcode, String faultstring, Binding...
method buildEmptyFault (line 212) | public String buildEmptyFault(QName bindingQName, SoapContext context) {
method buildEmptyFault (line 216) | public String buildEmptyFault(Binding binding, SoapContext context) {
method buildEmptyFault (line 220) | public static String buildEmptyFault(SoapVersion soapVersion, SoapCont...
method buildSoapMessageFromInput (line 229) | public String buildSoapMessageFromInput(Binding binding, BindingOperat...
method buildSoapMessageFromOutput (line 277) | public String buildSoapMessageFromOutput(Binding binding, BindingOpera...
method getDefinition (line 329) | public Definition getDefinition() {
method getSchemaDefinitionWrapper (line 333) | public SchemaDefinitionWrapper getSchemaDefinitionWrapper() {
method getOperationByName (line 337) | public BindingOperation getOperationByName(QName bindingName, String o...
method getBindingByName (line 349) | public Binding getBindingByName(QName bindingName) {
method getBindingNames (line 357) | public List<QName> getBindingNames() {
method getSoapVersion (line 361) | public static SoapVersion getSoapVersion(Binding binding) {
method addHeaders (line 386) | private void addHeaders(List<WsdlUtils.SoapHeader> headers, SoapVersio...
method buildDocumentResponse (line 413) | private void buildDocumentResponse(BindingOperation bindingOperation, ...
method buildDocumentRequest (line 430) | private void buildDocumentRequest(BindingOperation bindingOperation, X...
method createElementForPart (line 446) | private void createElementForPart(Part part, XmlCursor cursor, SampleX...
method buildRpcRequest (line 482) | private void buildRpcRequest(BindingOperation bindingOperation, SoapVe...
method buildRpcResponse (line 546) | private void buildRpcResponse(BindingOperation bindingOperation, SoapV...
method buildEmptyFault (line 609) | private static String buildEmptyFault(SampleXmlUtil generator, SoapVer...
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SoapVersion.java
type SoapVersion (line 54) | interface SoapVersion {
method getEnvelopeQName (line 58) | public QName getEnvelopeQName();
method getBodyQName (line 60) | public QName getBodyQName();
method getHeaderQName (line 62) | public QName getHeaderQName();
method validateSoapEnvelope (line 64) | public void validateSoapEnvelope(String soapMessage, List<XmlError> er...
method getContentTypeHttpHeader (line 66) | public String getContentTypeHttpHeader(String encoding, String soapAct...
method getEnvelopeNamespace (line 68) | public String getEnvelopeNamespace();
method getFaultDetailNamespace (line 70) | public String getFaultDetailNamespace();
method getEncodingNamespace (line 72) | public String getEncodingNamespace();
method getSoapEncodingSchema (line 74) | public XmlObject getSoapEncodingSchema() throws XmlException, IOExcept...
method getSoapEnvelopeSchema (line 76) | public XmlObject getSoapEnvelopeSchema() throws XmlException, IOExcept...
method shouldIgnore (line 84) | public boolean shouldIgnore(XmlValidationError xmlError);
method getContentType (line 86) | public String getContentType();
method getEnvelopeType (line 88) | public SchemaType getEnvelopeType();
method getFaultType (line 90) | public SchemaType getFaultType();
method getName (line 92) | public String getName();
class Utils (line 100) | public static class Utils {
method getSoapVersionForContentType (line 101) | public static SoapVersion getSoapVersionForContentType(String conten...
method getSoapActionHeader (line 114) | public String getSoapActionHeader(String soapAction);
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SoapVersion11.java
class SoapVersion11 (line 57) | class SoapVersion11 extends AbstractSoapVersion {
method SoapVersion11 (line 71) | private SoapVersion11() {
method getEnvelopeType (line 97) | public SchemaType getEnvelopeType() {
method getEnvelopeNamespace (line 101) | public String getEnvelopeNamespace() {
method getEncodingNamespace (line 105) | public String getEncodingNamespace() {
method getSoapEncodingSchema (line 109) | public XmlObject getSoapEncodingSchema() throws XmlException, IOExcept...
method getSoapEnvelopeSchema (line 113) | public XmlObject getSoapEnvelopeSchema() throws XmlException, IOExcept...
method toString (line 117) | public String toString() {
method getContentTypeHttpHeader (line 121) | public String getContentTypeHttpHeader(String encoding, String soapAct...
method getSoapActionHeader (line 128) | public String getSoapActionHeader(String soapAction) {
method getContentType (line 138) | public String getContentType() {
method getBodyQName (line 142) | public QName getBodyQName() {
method getEnvelopeQName (line 146) | public QName getEnvelopeQName() {
method getHeaderQName (line 150) | public QName getHeaderQName() {
method getSoapEnvelopeSchemaLoader (line 154) | protected SchemaTypeLoader getSoapEnvelopeSchemaLoader() {
method getFaultType (line 158) | public SchemaType getFaultType() {
method getName (line 162) | public String getName() {
method getFaultDetailNamespace (line 166) | public String getFaultDetailNamespace() {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/SoapVersion12.java
class SoapVersion12 (line 59) | class SoapVersion12 extends AbstractSoapVersion {
method SoapVersion12 (line 71) | private SoapVersion12() {
method getEncodingNamespace (line 87) | public String getEncodingNamespace() {
method getSoapEncodingSchema (line 91) | public XmlObject getSoapEncodingSchema() throws XmlException, IOExcept...
method getSoapEnvelopeSchema (line 95) | public XmlObject getSoapEnvelopeSchema() throws XmlException, IOExcept...
method getEnvelopeNamespace (line 99) | public String getEnvelopeNamespace() {
method getEnvelopeType (line 103) | public SchemaType getEnvelopeType() {
method toString (line 107) | public String toString() {
method quote (line 111) | public static String quote(String str) {
method getContentTypeHttpHeader (line 121) | public String getContentTypeHttpHeader(String encoding, String soapAct...
method getSoapActionHeader (line 133) | public String getSoapActionHeader(String soapAction) {
method getContentType (line 138) | public String getContentType() {
method getBodyQName (line 142) | public QName getBodyQName() {
method getEnvelopeQName (line 146) | public QName getEnvelopeQName() {
method getHeaderQName (line 150) | public QName getHeaderQName() {
method getSoapEnvelopeSchemaLoader (line 154) | protected SchemaTypeLoader getSoapEnvelopeSchemaLoader() {
method getFaultQName (line 158) | public static QName getFaultQName() {
method getFaultType (line 162) | public SchemaType getFaultType() {
method getName (line 166) | public String getName() {
method getFaultDetailNamespace (line 170) | public String getFaultDetailNamespace() {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/UrlSchemaLoader.java
class UrlSchemaLoader (line 47) | class UrlSchemaLoader implements SchemaLoader, DefinitionLoader {
method UrlSchemaLoader (line 50) | public UrlSchemaLoader(String baseURI) {
method loadXmlObject (line 54) | public XmlObject loadXmlObject(String wsdlUrl, XmlOptions options) thr...
method getBaseURI (line 58) | public String getBaseURI() {
method setProgressInfo (line 62) | public void setProgressInfo(String info) {
method isAborted (line 66) | public boolean isAborted() {
method abort (line 70) | public boolean abort() {
method setNewBaseURI (line 74) | public void setNewBaseURI(String uri) {
method getFirstNewURI (line 78) | public String getFirstNewURI() {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/WsdlContext.java
class WsdlContext (line 32) | class WsdlContext {
method WsdlContext (line 37) | WsdlContext(SoapMessageBuilder builder, Binding binding) {
method getDefinition (line 42) | Definition getDefinition() {
method getSoapVersion (line 46) | SoapVersion getSoapVersion() {
method hasSchemaTypes (line 50) | boolean hasSchemaTypes() {
method getSchemaTypeLoader (line 54) | SchemaTypeLoader getSchemaTypeLoader() {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/WsdlSettings.java
type WsdlSettings (line 47) | interface WsdlSettings {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/WsdlUtils.java
class WsdlUtils (line 66) | @SuppressWarnings("unchecked")
method getExtensiblityElement (line 70) | public static <T extends ExtensibilityElement> T getExtensiblityElemen...
method getExtensiblityElements (line 75) | public static <T extends ExtensibilityElement> List<T> getExtensiblity...
method findBindingForOperation (line 89) | public static Binding findBindingForOperation(Definition definition, B...
method isInputSoapEncoded (line 122) | public static boolean isInputSoapEncoded(BindingOperation bindingOpera...
method isOutputSoapEncoded (line 152) | public static boolean isOutputSoapEncoded(BindingOperation bindingOper...
method isRpc (line 182) | public static boolean isRpc(Definition definition, BindingOperation bi...
method isRpc (line 205) | public static boolean isRpc(Binding binding) {
method isOneWay (line 221) | public static boolean isOneWay(BindingOperation operation) {
method getInputParts (line 230) | public static Part[] getInputParts(BindingOperation operation) {
method isAttachmentInputPart (line 273) | public static boolean isAttachmentInputPart(Part part, BindingOperatio...
method isAttachmentOutputPart (line 277) | public static boolean isAttachmentOutputPart(Part part, BindingOperati...
method getOutputMultipartContent (line 281) | public static MIMEContent[] getOutputMultipartContent(Part part, Bindi...
method getInputMultipartContent (line 292) | public static MIMEContent[] getInputMultipartContent(Part part, Bindin...
method getContentParts (line 303) | public static MIMEContent[] getContentParts(Part part, MIMEMultipartRe...
method getFaultParts (line 323) | public static Part[] getFaultParts(BindingOperation bindingOperation, ...
method getOutputParts (line 354) | public static Part[] getOutputParts(BindingOperation operation) {
method getSoapEndpoint (line 400) | public static String getSoapEndpoint(Port port) {
method replaceSoapEndpoint (line 425) | public static boolean replaceSoapEndpoint(Port port, String endpoint) {
method getSoapBodyNamespace (line 442) | public static String getSoapBodyNamespace(List<?> list) {
type SoapHeader (line 460) | public interface SoapHeader {
method getMessage (line 461) | public QName getMessage();
method getPart (line 463) | public String getPart();
class Soap11Header (line 472) | public static class Soap11Header implements SoapHeader {
method Soap11Header (line 475) | public Soap11Header(SOAPHeader soapHeader) {
method getMessage (line 479) | public QName getMessage() {
method getPart (line 483) | public String getPart() {
class Soap12Header (line 494) | public static class Soap12Header implements SoapHeader {
method Soap12Header (line 497) | public Soap12Header(SOAP12Header soapHeader) {
method getMessage (line 501) | public QName getMessage() {
method getPart (line 505) | public String getPart() {
method getSoapHeaders (line 510) | public static List<SoapHeader> getSoapHeaders(List list) {
method findBindingOperation (line 529) | public static BindingOperation findBindingOperation(Binding binding, S...
method getTargetNamespace (line 551) | public static String getTargetNamespace(Definition definition) {
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/WsdlValidator.java
class WsdlValidator (line 42) | class WsdlValidator {
method WsdlValidator (line 47) | WsdlValidator(SoapMessageBuilder builder, Binding binding) {
method assertRequest (line 51) | List<AssertionError> assertRequest(BindingOperation bindingOperation, ...
method assertResponse (line 76) | List<AssertionError> assertResponse(BindingOperation bindingOperation,...
method validateXml (line 107) | @SuppressWarnings("unchecked")
method convertErrors (line 124) | private List<AssertionError> convertErrors(List<XmlError> errors) {
method validateMessage (line 156) | @SuppressWarnings("unchecked")
method validateDocLiteral (line 199) | private void validateDocLiteral(BindingOperation bindingOperation, Par...
method validateMessageBody (line 270) | private void validateMessageBody(List<XmlError> errors, SchemaType typ...
method getLine (line 349) | private int getLine(XmlObject object) {
method validateRpcLiteral (line 361) | private void validateRpcLiteral(BindingOperation bindingOperation, Par...
method getRpcBodyPart (line 427) | private XmlObject[] getRpcBodyPart(BindingOperation bindingOperation, ...
method validateSoapFault (line 444) | @SuppressWarnings("unchecked")
FILE: soap-legacy/src/main/java/org/reficio/ws/legacy/XmlUtils.java
class XmlUtils (line 67) | @SuppressWarnings("deprecation")
method parse (line 72) | static synchronized public Document parse(InputStream in) {
method parse (line 82) | static synchronized public Document parse(String fileName) throws IOEx...
method parse (line 93) | static synchronized public Document parse(InputSource inputSource) thr...
method getChildElements (line 101) | public static NodeList getChildElements(Element elm) {
class ElementNodeList (line 114) | private final static class ElementNodeList implements NodeList {
method ElementNodeList (line 117) | public ElementNodeList(List<Element> list) {
method getLength (line 121) | public int getLength() {
method item (line 125) | public Node item(int index) {
method getChildElementText (line 130) | public static String getChildElementText(Element elm, String name) {
method getFirstChildElement (line 135) | public static Element getFirstChildElement(Element elm) {
method getElementText (line 139) | static public String getElementText(Element elm) {
method getFragmentText (line 147) | static public String getFragmentText(DocumentFragment elm) {
method getChildElementText (line 155) | public static String getChildElementText(Element elm, String name, Str...
method getNodeValue (line 160) | static public String getNodeValue(Node node) {
method getFirstChildElement (line 172) | public static Element getFirstChildElement(Element elm, String name) {
method getFirstChildElementIgnoreCase (line 186) | public static Element getFirstChildElementIgnoreCase(Element elm, Stri...
method getFirstChildElementNS (line 200) | public static Element getFirstChildElementNS(Element elm, String tns, ...
method removeUnneccessaryNamespaces (line 223) | public static String removeUnneccessaryNamespaces(String xml) {
method ensureDocumentBuilder (line 274) | private static DocumentBuilder ensureDocumentBuilder() {
method createXmlObject (line 289) | public static XmlObject createXmlObject(String input, XmlOptions xmlOp...
method createXmlObject (line 293) | public static XmlObject createXmlObject(URL input, XmlOptions xmlOptio...
method createXmlObject (line 302) | public static XmlObject createXmlObject(String input) throws XmlExcept...
method createXmlObject (line 306) | public static XmlObject createXmlObject(URL input) throws XmlException {
method setElementText (line 316) | static public void setElementText(Element elm, String text) {
method getQName (line 332) | public static QName getQName(XmlObject contentElement) {
method getQName (line 336) | public static QName getQName(Node node) {
method parseXml (line 345) | public static Document parseXml(String xmlString) throws IOException {
method setNodeValue (line 349) | public static boolean setNodeValue(Node domNode, String string) {
method declareXPathNamespaces (line 381) | public static String declareXPathNamespaces(XmlObject xmlObject) {
method setXPathContent (line 428) | public static String setXPathContent(String xmlText, String xpath, Str...
method serializePretty (line 450) | public static void serializePretty(XmlObject xmlObject, Writer writer)...
FILE: soap-server/src/main/java/org/reficio/ws/server/OperationNotFoundException.java
class OperationNotFoundException (line 27) | public class OperationNotFoundException extends SoapServerException {
method OperationNotFoundException (line 28) | public OperationNotFoundException(String message) {
method OperationNotFoundException (line 32) | public OperationNotFoundException(String message, Throwable cause) {
method OperationNotFoundException (line 36) | public OperationNotFoundException(Throwable cause) {
FILE: soap-server/src/main/java/org/reficio/ws/server/ServiceRegistrationException.java
class ServiceRegistrationException (line 27) | public class ServiceRegistrationException extends SoapServerException {
method ServiceRegistrationException (line 28) | public ServiceRegistrationException(String message) {
method ServiceRegistrationException (line 32) | public ServiceRegistrationException(String message, Throwable cause) {
method ServiceRegistrationException (line 36) | public ServiceRegistrationException(Throwable cause) {
FILE: soap-server/src/main/java/org/reficio/ws/server/SoapServerException.java
class SoapServerException (line 29) | public class SoapServerException extends SoapException {
method SoapServerException (line 30) | public SoapServerException(String message) {
method SoapServerException (line 34) | public SoapServerException(String message, Throwable cause) {
method SoapServerException (line 38) | public SoapServerException(Throwable cause) {
FILE: soap-server/src/main/java/org/reficio/ws/server/core/SoapServer.java
class SoapServer (line 58) | @ThreadSafe
method start (line 92) | public void start() {
method isRunning (line 100) | public boolean isRunning() {
method isStarted (line 104) | public boolean isStarted() {
method isStarting (line 108) | public boolean isStarting() {
method isStopping (line 112) | public boolean isStopping() {
method isStopped (line 116) | public boolean isStopped() {
method isNotRunning (line 120) | public boolean isNotRunning() {
method isFailed (line 124) | public boolean isFailed() {
method stop (line 131) | public void stop() {
method destroy (line 142) | public void destroy() {
method registerRequestResponder (line 154) | public void registerRequestResponder(String contextPath, RequestRespon...
method unregisterRequestResponder (line 168) | public void unregisterRequestResponder(String contextPath) throws Serv...
method getUrl (line 174) | private String getUrl(String contextPath) {
method validateUrl (line 179) | private void validateUrl(String contextPath) {
method getRegisteredContextPaths (line 192) | public List<String> getRegisteredContextPaths() {
method configure (line 199) | private void configure() {
method configureParentContext (line 205) | private void configureParentContext() {
method configureConnectors (line 216) | private void configureConnectors() {
method configureHttpConnector (line 230) | private SelectChannelConnector configureHttpConnector(SelectChannelCon...
method configureHttpsConnector (line 237) | private SslSelectChannelConnector configureHttpsConnector(SslSelectCha...
method configureGenericConnector (line 247) | private AbstractConnector configureGenericConnector(AbstractConnector ...
method configureWebContext (line 253) | private void configureWebContext() {
method getServletContext (line 265) | private ServletContext getServletContext() {
method buildProperties (line 274) | private Properties buildProperties() {
method SoapServer (line 285) | private SoapServer() {
class Builder (line 291) | public static class Builder {
method httpPort (line 298) | public Builder httpPort(int value) {
method httpsPort (line 309) | public Builder httpsPort(int value) {
method connectionMaxIdleTimeInSeconds (line 320) | public Builder connectionMaxIdleTimeInSeconds(int value) {
method acceptorThreads (line 330) | public Builder acceptorThreads(int value) {
method coreThreads (line 340) | public Builder coreThreads(int value) {
method maxThreads (line 350) | public Builder maxThreads(int value) {
method threadKeepAliveTimeInSeconds (line 360) | public Builder threadKeepAliveTimeInSeconds(int value) {
method keyStoreUrl (line 371) | public Builder keyStoreUrl(URL value) {
method keyStoreType (line 381) | public Builder keyStoreType(String value) {
method keyStorePassword (line 391) | public Builder keyStorePassword(String value) {
method reuseAddress (line 400) | public Builder reuseAddress(boolean value) {
method build (line 410) | public SoapServer build() {
method builder (line 419) | public static Builder builder() {
FILE: soap-server/src/main/java/org/reficio/ws/server/core/SoapServerConstants.java
class SoapServerConstants (line 25) | final class SoapServerConstants {
method SoapServerConstants (line 27) | private SoapServerConstants() {
FILE: soap-server/src/main/java/org/reficio/ws/server/core/SoapServerFactory.java
class SoapServerFactory (line 33) | public class SoapServerFactory {
method setHttpPort (line 49) | public void setHttpPort(Integer value) {
method setHttpsPort (line 54) | public void setHttpsPort(Integer value) {
method setConnectionMaxIdleTimeInSeconds (line 59) | public void setConnectionMaxIdleTimeInSeconds(Integer value) {
method setAcceptorThreads (line 64) | public void setAcceptorThreads(Integer value) {
method setCoreThreads (line 69) | public void setCoreThreads(Integer value) {
method setMaxThreads (line 74) | public void setMaxThreads(Integer value) {
method setThreadKeepAliveTimeInSeconds (line 79) | public void setThreadKeepAliveTimeInSeconds(Integer value) {
method setKeyStoreUrl (line 84) | public void setKeyStoreUrl(URL value) {
method setKeyStoreType (line 89) | public void setKeyStoreType(String value) {
method setKeyStorePassword (line 94) | public void setKeyStorePassword(String value) {
method setReuseAddress (line 98) | public void setReuseAddress(Boolean value) {
method setResponders (line 103) | public void setResponders(Map<String, RequestResponder> responders) {
method create (line 108) | public SoapServer create() {
method configureResponders (line 121) | private void configureResponders(SoapServer server) {
method configureThreadPools (line 127) | private void configureThreadPools(SoapServer.Builder builder) {
method configureTimeouts (line 139) | private void configureTimeouts(SoapServer.Builder builder) {
method configureConnection (line 148) | private void configureConnection(SoapServer.Builder builder) {
method configureKeyStore (line 160) | private void configureKeyStore(SoapServer.Builder builder) {
method main (line 170) | public static void main(String[] args) {
FILE: soap-server/src/main/java/org/reficio/ws/server/endpoint/ContextEndpointAdapter.java
class ContextEndpointAdapter (line 35) | public class ContextEndpointAdapter extends PayloadEndpointAdapter {
method invoke (line 37) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/endpoint/ContextPayloadEndpoint.java
type ContextPayloadEndpoint (line 30) | public interface ContextPayloadEndpoint extends PayloadEndpoint {
method invoke (line 42) | Source invoke(MessageContext messageContext);
FILE: soap-server/src/main/java/org/reficio/ws/server/endpoint/GenericContextDomEndpoint.java
class GenericContextDomEndpoint (line 47) | public class GenericContextDomEndpoint implements ContextPayloadEndpoint...
method GenericContextDomEndpoint (line 56) | public GenericContextDomEndpoint() {
method invoke (line 65) | @Override
method getRequestResponderBySessionRequestContextPath (line 76) | private RequestResponder getRequestResponderBySessionRequestContextPat...
method getRequestResponderByRequestContextPath (line 81) | private RequestResponder getRequestResponderByRequestContextPath(Strin...
method noResponderForRequestFound (line 85) | private boolean noResponderForRequestFound(RequestResponder responder) {
method handleNoResponderFault (line 92) | private Source handleNoResponderFault() {
method getHttpServletRequest (line 97) | private HttpServletRequest getHttpServletRequest() {
method getRequestContextPath (line 101) | private String getRequestContextPath() {
method registerRequestResponder (line 112) | public void registerRequestResponder(String contextPath, RequestRespon...
method unregisterRequestResponder (line 124) | public void unregisterRequestResponder(String contextPath) throws Serv...
method getRegisteredContextPaths (line 133) | public Enumeration<String> getRegisteredContextPaths() {
method afterPropertiesSet (line 137) | @Override
method invoke (line 146) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/endpoint/GenericEndpointMapping.java
class GenericEndpointMapping (line 30) | public class GenericEndpointMapping extends AbstractEndpointMapping {
method getEndpointInternal (line 37) | @Override
method getGenericEndpoint (line 42) | public ContextPayloadEndpoint getGenericEndpoint() {
method setGenericEndpoint (line 46) | public void setGenericEndpoint(ContextPayloadEndpoint genericEndpoint) {
FILE: soap-server/src/main/java/org/reficio/ws/server/endpoint/GenericSoapMessage.java
class GenericSoapMessage (line 39) | public class GenericSoapMessage implements WebServiceMessage {
method GenericSoapMessage (line 46) | public GenericSoapMessage(Source source) {
method getPayloadSource (line 50) | @Override
method getPayloadResult (line 55) | @Override
method writeTo (line 60) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/matcher/AggregatingVisitor.java
class AggregatingVisitor (line 30) | public abstract class AggregatingVisitor<T> implements BindingOperationV...
method addResult (line 38) | public void addResult(T result) {
method getUniqueResult (line 46) | public T getUniqueResult() {
method getResults (line 58) | public Set<T> getResults() {
FILE: soap-server/src/main/java/org/reficio/ws/server/matcher/BindingOperationVisitor.java
type BindingOperationVisitor (line 29) | public interface BindingOperationVisitor {
method visit (line 34) | void visit(BindingOperation operation);
FILE: soap-server/src/main/java/org/reficio/ws/server/matcher/SoapOperationMatcher.java
class SoapOperationMatcher (line 58) | public class SoapOperationMatcher {
method SoapOperationMatcher (line 63) | public SoapOperationMatcher(Binding binding) {
method isRpc (line 71) | protected boolean isRpc() {
method isDocument (line 78) | protected boolean isDocument() {
method getInvokedOperation (line 96) | public BindingOperation getInvokedOperation(SoapMessage message) throw...
method getOperationBySoapAction (line 127) | private BindingOperation getOperationBySoapAction(SoapMessage message) {
method getOperationByRootQName (line 146) | private BindingOperation getOperationByRootQName(Set<Node> rootNodes) ...
method matchElementNameToOperationName (line 158) | private BindingOperation matchElementNameToOperationName(final QName e...
method getOperationByInputTypes (line 182) | @SuppressWarnings("unchecked")
method getOperationByInputNames (line 217) | @SuppressWarnings("unchecked")
method visitOperation (line 233) | @SuppressWarnings("unchecked")
method isRequestResponseOperation (line 245) | public boolean isRequestResponseOperation(BindingOperation operation) {
FILE: soap-server/src/main/java/org/reficio/ws/server/protocol/GenericSoapMessageFactory.java
class GenericSoapMessageFactory (line 40) | public class GenericSoapMessageFactory implements SoapMessageFactory, In...
method GenericSoapMessageFactory (line 57) | public GenericSoapMessageFactory() {
method setMessageFactoryForRequestContext (line 63) | private void setMessageFactoryForRequestContext(SaajSoapMessageFactory...
method getMessageFactoryForRequestContext (line 68) | private SaajSoapMessageFactory getMessageFactoryForRequestContext() {
method setSoapVersion (line 74) | public void setSoapVersion(SoapVersion version) {
method setSoapProtocolChooser (line 78) | public void setSoapProtocolChooser(SoapProtocolChooser soapProtocolCho...
method configureFactory (line 82) | private void configureFactory(SaajSoapMessageFactory factory, SoapVers...
method afterPropertiesSet (line 87) | @Override
method createWebServiceMessage (line 93) | @Override
method createWebServiceMessage (line 98) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/protocol/SimpleSoapProtocolChooser.java
class SimpleSoapProtocolChooser (line 33) | public class SimpleSoapProtocolChooser implements SoapProtocolChooser {
method useSoap11 (line 43) | @Override
method useSoap12 (line 65) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/protocol/SoapProtocolChooser.java
type SoapProtocolChooser (line 33) | public interface SoapProtocolChooser {
method useSoap11 (line 35) | boolean useSoap11(TransportInputStream transportInputStream) throws IO...
method useSoap12 (line 37) | boolean useSoap12(TransportInputStream transportInputStream) throws IO...
FILE: soap-server/src/main/java/org/reficio/ws/server/responder/AbstractResponder.java
class AbstractResponder (line 42) | public abstract class AbstractResponder implements RequestResponder {
method getBuilder (line 48) | public SoapBuilder getBuilder() {
method AbstractResponder (line 57) | public AbstractResponder(SoapBuilder builder) {
method respond (line 71) | @Override
method respond (line 95) | public abstract Source respond(SoapOperation invokedOperation, SoapMes...
FILE: soap-server/src/main/java/org/reficio/ws/server/responder/AutoResponder.java
class AutoResponder (line 39) | public class AutoResponder extends AbstractResponder {
method AutoResponder (line 48) | public AutoResponder(SoapBuilder builder) {
method AutoResponder (line 60) | public AutoResponder(SoapBuilder builder, SoapContext context) {
method respond (line 65) | @Override
FILE: soap-server/src/main/java/org/reficio/ws/server/responder/RequestResponder.java
type RequestResponder (line 31) | public interface RequestResponder {
method respond (line 54) | Source respond(SoapMessage request);
FILE: soap-server/src/test/java/org/reficio/ws/server/PasswordLessKeystoreTest.java
class PasswordLessKeystoreTest (line 57) | @Ignore // not supported yet
method generateKeyLessKeystore (line 61) | public void generateKeyLessKeystore() throws Exception {
method trustStoreUrl (line 83) | @Test
method testServerWithKeyLessKeystore_EmptyPwd (line 97) | @Test
method testServerWithKeyLessKeystore_NullPwd (line 109) | @Test(expected = SoapServerException.class)
method testServerWithKeyLessKeystore_WrongPwd (line 121) | @Test(expected = SoapServerException.class)
FILE: soap-server/src/test/java/org/reficio/ws/server/SimpleServerTest.java
class SimpleServerTest (line 39) | public class SimpleServerTest {
method isPortAvailable (line 41) | public static boolean isPortAvailable(int port) {
method getFreePort (line 66) | public static int getFreePort() {
method getServer (line 75) | public static SoapServer getServer() {
method startStop (line 82) | @Test
method startStopDestroy (line 95) | @Test
method startStopDestroyCannotResurrect (line 103) | @Test
method registerCheck (line 118) | @Test
method unregisterCheck (line 133) | @Test
method doubleRegister (line 148) | @Test(expected = ServiceRegistrationException.class)
method registerNullResponder (line 166) | @Test(expected = NullPointerException.class)
method registerNullContextPath (line 173) | @Test(expected = NullPointerException.class)
method unregisterNotExisting (line 184) | @Test(expected = ServiceRegistrationException.class)
FILE: soap-test/src/main/java/org/reficio/ws/test/ServerProcessor.java
class ServerProcessor (line 39) | public class ServerProcessor {
method ServerProcessor (line 49) | public ServerProcessor(org.reficio.ws.test.junit.Server server, Class ...
method ServerProcessor (line 57) | public ServerProcessor(org.reficio.ws.test.spock.Server server, Class ...
method processUrl (line 65) | private String processUrl(String wsdlUrl) {
method initServer (line 76) | public SoapServer initServer() {
method stopServer (line 89) | public void stopServer() {
method construct (line 95) | private SoapServer construct() {
method registerService (line 101) | private void registerService(SoapServer server, AutoResponder responde...
method getAutoResponder (line 105) | private AutoResponder getAutoResponder(SoapBuilder builder) {
method getBuilder (line 114) | private SoapBuilder getBuilder(Wsdl parser) {
method getWsdlUrl (line 128) | private URL getWsdlUrl(Class testClass) {
method validate (line 145) | private void validate() {
FILE: soap-test/src/main/java/org/reficio/ws/test/junit/SoapRule.java
class SoapRule (line 30) | public class SoapRule implements TestRule {
method apply (line 32) | @Override
method statement (line 37) | private Statement statement(final Statement base, final Description de...
FILE: soap-test/src/test/java/org/reficio/ws/test/junit/SoapRuleTest.java
class SoapRuleTest (line 38) | @Server(wsdl = "classpath:wsdl/currency-convertor.wsdl", binding = "Curr...
method testSoapMock_perMethodServer (line 52) | @Test
method testSoapMock_perClassServer (line 67) | @Test
Condensed preview — 549 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,192K chars).
[
{
"path": ".gitignore",
"chars": 547,
"preview": "# Compiled source #\n###################\n*.com\n*.class\n*.dll\n*.exe\n*.o\n*.so\n\n# Packages #\n############\n# it's better to u"
},
{
"path": ".travis.yml",
"chars": 35,
"preview": "language: java\njdk:\n - oraclejdk7\n"
},
{
"path": "README.md",
"chars": 22961,
"preview": "# soap-ws [](http://travis-ci.org/reficio/soap-ws)\n\n## "
},
{
"path": "pom.xml",
"chars": 24345,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
},
{
"path": "soap-builder/pom.xml",
"chars": 1870,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n xmlns:xsi=\"http://www"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilder.java",
"chars": 2429,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/SoapBuilderFinder.java",
"chars": 1393,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/SoapOperation.java",
"chars": 1375,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationBuilder.java",
"chars": 1839,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/SoapOperationFinder.java",
"chars": 1357,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/core/SoapBuilderImpl.java",
"chars": 7268,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationFinderImpl.java",
"chars": 5079,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/core/SoapOperationImpl.java",
"chars": 5945,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/core/SoapUtils.java",
"chars": 2858,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/java/org/reficio/ws/builder/core/Wsdl.java",
"chars": 6513,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/main/resources/xsds/XMLSchema.xsd",
"chars": 86605,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- XML Schema schema for XML Schemas: Part 1: Structures -->\n<!-- Note this sch"
},
{
"path": "soap-builder/src/main/resources/xsds/soapEncoding.xsd",
"chars": 16935,
"preview": "<?xml version='1.0' encoding='UTF-8' ?>\n\n<!-- Schema for the SOAP/1.1 encoding\n\n This schema has been produced using"
},
{
"path": "soap-builder/src/main/resources/xsds/soapEncoding12.xsd",
"chars": 17142,
"preview": "<!-- Schema defined in the SOAP Version 1.2 Part 2 specification\n Proposed Recommendation:\n http://www.w3.org/TR"
},
{
"path": "soap-builder/src/main/resources/xsds/soapEnvelope.xsd",
"chars": 6407,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Schema for the SOAP/1.1 envelope\n\nPortions © 2001 DevelopMentor. \n© 2001 W3C"
},
{
"path": "soap-builder/src/main/resources/xsds/soapEnvelope12.xsd",
"chars": 5762,
"preview": "<!-- Schema defined in the SOAP Version 1.2 Part 1 specification\n Proposed Recommendation:\n http://www.w3.org/TR"
},
{
"path": "soap-builder/src/main/resources/xsds/swaref.xsd",
"chars": 3984,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n Copyright (c) 2002-2004 by The Web Services-Interoperability Organization "
},
{
"path": "soap-builder/src/main/resources/xsds/xmime200411.xsd",
"chars": 1428,
"preview": "<?xml version=\"1.0\" ?>\n<!-- \n W3C XML Schema defined in the Assigning Media Types to Binary Data in XML\n specificati"
},
{
"path": "soap-builder/src/main/resources/xsds/xmime200505.xsd",
"chars": 1605,
"preview": "<?xml version=\"1.0\"?>\n<!-- \n W3C XML Schema defined in the Describing Media Content of Binary Data in XML\n specifica"
},
{
"path": "soap-builder/src/main/resources/xsds/xml.xsd",
"chars": 5835,
"preview": "<?xml version='1.0'?>\n<xs:schema targetNamespace=\"http://www.w3.org/XML/1998/namespace\" xmlns:xs=\"http://www.w3.org/2001"
},
{
"path": "soap-builder/src/main/resources/xsds/xop.xsd",
"chars": 481,
"preview": "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:tns=\"http://www.w3.org/2004/08/xop/include\" targetNamespace"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/DefinitionSaveTest.java",
"chars": 6008,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/MessageComplianceTest.java",
"chars": 4381,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/ServiceComplianceTest.java",
"chars": 7623,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/SoapBuilderImplTest.java",
"chars": 1611,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/SoapOperationFinderImplTest.java",
"chars": 2251,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/java/org/reficio/ws/builder/WsdlTest.java",
"chars": 3407,
"preview": "/**\n * Copyright (c) 2012-2013 Reficio (TM) - Reestablish your software!. All Rights Reserved.\n *\n * Licensed to the Apa"
},
{
"path": "soap-builder/src/test/resources/builder/snowboard.wsdl",
"chars": 3264,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<wsdl:definitions name=\"EndorsementSearch\" targetNamespace=\"http://namespaces.sno"
},
{
"path": "soap-builder/src/test/resources/log4j.xml",
"chars": 1591,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Licensed to the Apache Software Foundation (ASF) under one or more\n "
},
{
"path": "soap-builder/src/test/resources/messages/EmptyFault11.xml",
"chars": 321,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">\n <soapenv:Header/>\n <soapenv:Body>\n <s"
},
{
"path": "soap-builder/src/test/resources/messages/EmptyFault12.xml",
"chars": 519,
"preview": "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\n <soap:Header/>\n <soap:Body>\n <soap:Fault>\n "
},
{
"path": "soap-builder/src/test/resources/messages/EmptyMessage11.xml",
"chars": 137,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">\n <soapenv:Header/>\n <soapenv:Body/>\n</s"
},
{
"path": "soap-builder/src/test/resources/messages/EmptyMessage12.xml",
"chars": 120,
"preview": "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\n <soap:Header/>\n <soap:Body/>\n</soap:Envelope>\n"
},
{
"path": "soap-builder/src/test/resources/messages/FaultVersionMismatch11.xml",
"chars": 285,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\">\n <soapenv:Header/>\n <soapenv:Body>\n <s"
},
{
"path": "soap-builder/src/test/resources/messages/FaultVersionMismatch12.xml",
"chars": 353,
"preview": "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\n <soap:Header/>\n <soap:Body>\n <soap:Fault>\n "
},
{
"path": "soap-builder/src/test/resources/services/test01/TestService.wsdl",
"chars": 14722,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test01/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test01/readme.txt",
"chars": 39,
"preview": "This setup only uses relative includes\n"
},
{
"path": "soap-builder/src/test/resources/services/test01/testservice1.xsd",
"chars": 12478,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test01/testservice2.xsd",
"chars": 934,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test02/TestService.wsdl",
"chars": 14154,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test02/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test02/readme.txt",
"chars": 59,
"preview": "This setup uses relative import to xsds, include from xsds\n"
},
{
"path": "soap-builder/src/test/resources/services/test02/testservice1.xsd",
"chars": 12577,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test02/testservice2.xsd",
"chars": 635,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test03/TestService.wsdl",
"chars": 14208,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test03/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test03/readme.txt",
"chars": 38,
"preview": "This setup uses only relative imports\n"
},
{
"path": "soap-builder/src/test/resources/services/test03/testservice1.xsd",
"chars": 12631,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test03/testservice2.xsd",
"chars": 635,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test04/TestService.wsdl",
"chars": 14263,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test04/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test04/readme.txt",
"chars": 123,
"preview": "This setup uses only relative imports and also includes testservice2.xsd into the \nwsdls types (so it gets included twic"
},
{
"path": "soap-builder/src/test/resources/services/test04/testservice1.xsd",
"chars": 12631,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test04/testservice2.xsd",
"chars": 635,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test05/TestBinding.wsdl",
"chars": 13873,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test05/TestService.wsdl",
"chars": 785,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test05/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test05/readme.txt",
"chars": 140,
"preview": "This setup splits the binding and service into 2 files; the later imports the former, which includes\nthe first xsd which"
},
{
"path": "soap-builder/src/test/resources/services/test05/testservice1.xsd",
"chars": 12631,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test05/testservice2.xsd",
"chars": 635,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<s:schema xmlns:s=\"http://www.w3.org/2001/XMLSchema\" elementFormDefault=\"qualifie"
},
{
"path": "soap-builder/src/test/resources/services/test06/TestService.wsdl",
"chars": 791,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<wsdl:definitions xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"\n "
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Copy.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Copy.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Delete.request.xml",
"chars": 739,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Delete.response.xml",
"chars": 443,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/DeleteChildren.request.xml",
"chars": 755,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/DeleteChildren.response.xml",
"chars": 451,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/DeleteVersion.request.xml",
"chars": 709,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/DeleteVersion.response.xml",
"chars": 450,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/FindPagesWithCriteria.request.xml",
"chars": 1276,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/FindPagesWithCriteria.response.xml",
"chars": 2849,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetChildren.request.xml",
"chars": 705,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetChildren.response.xml",
"chars": 2809,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetDefaultPageData.request.xml",
"chars": 761,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetDefaultPageData.response.xml",
"chars": 2594,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetPage.request.xml",
"chars": 697,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/GetPage.response.xml",
"chars": 2550,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Move.request.xml",
"chars": 947,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Move.response.xml",
"chars": 441,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Ping.request.xml",
"chars": 433,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Ping.response.xml",
"chars": 507,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Save.request.xml",
"chars": 2544,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/TestServiceSoap/Save.response.xml",
"chars": 711,
"preview": "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:v1=\"http://schemas.eviware.com/TestSer"
},
{
"path": "soap-builder/src/test/resources/services/test06/operations/soap-version.txt",
"chars": 9,
"preview": "SOAP 1.1\n"
},
{
"path": "soap-builder/src/test/resources/services/test06/readme.txt",
"chars": 178,
"preview": "This setup splits the binding and service into 2 files; the later imports the former, which includes\nthe first xsd which"
}
]
// ... and 349 more files (download for full content)
About this extraction
This page contains the full source code of the reficio/soap-ws GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 549 files (1.9 MB), approximately 544.8k tokens, and a symbol index with 1090 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.