soaspec 0.2.23 → 0.2.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +15 -15
  3. data/.gitlab-ci.yml +33 -33
  4. data/.rspec +3 -3
  5. data/.rubocop.yml +2 -2
  6. data/CODE_OF_CONDUCT.md +74 -74
  7. data/ChangeLog +577 -573
  8. data/Gemfile +6 -6
  9. data/LICENSE.txt +21 -21
  10. data/README.md +230 -230
  11. data/Rakefile +42 -42
  12. data/Todo.md +15 -15
  13. data/exe/soaspec +123 -123
  14. data/exe/xml_to_yaml_file +42 -42
  15. data/lib/soaspec.rb +101 -101
  16. data/lib/soaspec/core_ext/hash.rb +35 -35
  17. data/lib/soaspec/cucumber/generic_steps.rb +85 -85
  18. data/lib/soaspec/demo.rb +4 -4
  19. data/lib/soaspec/exchange/exchange.rb +111 -111
  20. data/lib/soaspec/exchange/exchange_extractor.rb +83 -83
  21. data/lib/soaspec/exchange/exchange_properties.rb +26 -26
  22. data/lib/soaspec/exchange/exchange_repeater.rb +19 -19
  23. data/lib/soaspec/exchange/request_builder.rb +68 -68
  24. data/lib/soaspec/exchange/variable_storer.rb +22 -22
  25. data/lib/soaspec/exchange_handlers/exchange_handler.rb +126 -126
  26. data/lib/soaspec/exchange_handlers/handler_accessors.rb +130 -130
  27. data/lib/soaspec/exchange_handlers/response_extractor.rb +82 -82
  28. data/lib/soaspec/exchange_handlers/rest_exchanger_factory.rb +109 -109
  29. data/lib/soaspec/exchange_handlers/rest_handler.rb +259 -259
  30. data/lib/soaspec/exchange_handlers/rest_methods.rb +44 -44
  31. data/lib/soaspec/exchange_handlers/rest_parameters.rb +86 -86
  32. data/lib/soaspec/exchange_handlers/rest_parameters_defaults.rb +21 -21
  33. data/lib/soaspec/exchange_handlers/soap_handler.rb +235 -235
  34. data/lib/soaspec/exe_helpers.rb +92 -92
  35. data/lib/soaspec/generate_server.rb +37 -37
  36. data/lib/soaspec/generator/.rspec.erb +5 -5
  37. data/lib/soaspec/generator/.travis.yml.erb +5 -5
  38. data/lib/soaspec/generator/Gemfile.erb +8 -8
  39. data/lib/soaspec/generator/README.md.erb +29 -29
  40. data/lib/soaspec/generator/Rakefile.erb +19 -19
  41. data/lib/soaspec/generator/config/data/default.yml.erb +2 -2
  42. data/lib/soaspec/generator/css/bootstrap.css +6833 -6833
  43. data/lib/soaspec/generator/generate_exchange.html.erb +35 -35
  44. data/lib/soaspec/generator/lib/blz_service.rb.erb +26 -26
  45. data/lib/soaspec/generator/lib/dynamic_class_content.rb.erb +12 -12
  46. data/lib/soaspec/generator/lib/new_rest_service.rb.erb +51 -51
  47. data/lib/soaspec/generator/lib/new_soap_service.rb.erb +29 -29
  48. data/lib/soaspec/generator/lib/package_service.rb.erb +2 -2
  49. data/lib/soaspec/generator/lib/shared_example.rb.erb +8 -8
  50. data/lib/soaspec/generator/spec/dynamic_soap_spec.rb.erb +12 -12
  51. data/lib/soaspec/generator/spec/rest_spec.rb.erb +9 -9
  52. data/lib/soaspec/generator/spec/soap_spec.rb.erb +51 -51
  53. data/lib/soaspec/generator/spec/spec_helper.rb.erb +23 -23
  54. data/lib/soaspec/generator/template/soap_template.xml +6 -6
  55. data/lib/soaspec/indifferent_hash.rb +7 -7
  56. data/lib/soaspec/interpreter.rb +39 -39
  57. data/lib/soaspec/matchers.rb +114 -114
  58. data/lib/soaspec/not_found_errors.rb +13 -13
  59. data/lib/soaspec/o_auth2.rb +128 -128
  60. data/lib/soaspec/soaspec_shared_examples.rb +24 -24
  61. data/lib/soaspec/spec_logger.rb +121 -121
  62. data/lib/soaspec/template_reader.rb +28 -28
  63. data/lib/soaspec/test_server/bank.wsdl +90 -90
  64. data/lib/soaspec/test_server/get_bank.rb +164 -164
  65. data/lib/soaspec/test_server/id_manager.rb +39 -39
  66. data/lib/soaspec/test_server/invoices.rb +27 -27
  67. data/lib/soaspec/test_server/namespace.xml +14 -14
  68. data/lib/soaspec/test_server/note.xml +5 -5
  69. data/lib/soaspec/test_server/puppy_service.rb +19 -19
  70. data/lib/soaspec/test_server/test_attribute.rb +12 -12
  71. data/lib/soaspec/test_server/test_namespace.rb +12 -12
  72. data/lib/soaspec/version.rb +4 -3
  73. data/lib/soaspec/virtual_server.rb +174 -174
  74. data/lib/soaspec/wait.rb +41 -41
  75. data/lib/soaspec/wsdl_generator.rb +215 -215
  76. data/soaspec.gemspec +53 -53
  77. data/test.wsdl +116 -116
  78. data/test.xml +10 -10
  79. data/test_wsdl.rb +41 -41
  80. metadata +3 -4
@@ -1,24 +1,24 @@
1
- require 'rspec'
2
-
3
- shared_examples_for 'success scenario' do
4
- it 'has successful status code' do
5
- expect(200..299).to cover described_class.status_code
6
- end
7
- context 'has expected mandatory elements' do
8
- described_class.exchange_handler.expected_mandatory_elements.each do |mandatory_element|
9
- it mandatory_element do
10
- expect(described_class).to contain_key mandatory_element
11
- end
12
- end
13
- end
14
- described_class.exchange_handler.expected_mandatory_xpath_values.each do |xpath, value|
15
- it "has xpath '#{xpath}' equal to '#{value}'" do
16
- expect(described_class).to have_xpath_value(xpath => value)
17
- end
18
- end
19
- described_class.exchange_handler.expected_mandatory_json_values.each do |xpath, value|
20
- it "has json '#{xpath}' equal to '#{value}'" do
21
- expect(described_class).to have_xpath_value(xpath => value)
22
- end
23
- end
24
- end
1
+ require 'rspec'
2
+
3
+ RSpec.shared_examples_for 'success scenario' do
4
+ it 'has successful status code' do
5
+ expect(200..299).to cover described_class.status_code
6
+ end
7
+ context 'has expected mandatory elements' do
8
+ described_class.exchange_handler.expected_mandatory_elements.each do |mandatory_element|
9
+ it mandatory_element do
10
+ expect(described_class).to contain_key mandatory_element
11
+ end
12
+ end
13
+ end
14
+ described_class.exchange_handler.expected_mandatory_xpath_values.each do |xpath, value|
15
+ it "has xpath '#{xpath}' equal to '#{value}'" do
16
+ expect(described_class).to have_xpath_value(xpath => value)
17
+ end
18
+ end
19
+ described_class.exchange_handler.expected_mandatory_json_values.each do |xpath, value|
20
+ it "has json '#{xpath}' equal to '#{value}'" do
21
+ expect(described_class).to have_xpath_value(xpath => value)
22
+ end
23
+ end
24
+ end
@@ -1,121 +1,121 @@
1
- require 'logger'
2
- require 'fileutils'
3
- require 'colorize'
4
-
5
- module Soaspec
6
- # Custom class for logging API traffic
7
- class ApiLogger < Logger
8
- #
9
- # Rewrite << to use info logger with formatting
10
- #
11
- def <<(msg)
12
- info msg
13
- end
14
- end
15
-
16
- # Handles logs of API requests and responses
17
- class SpecLogger
18
- # Folder to put API traffic logs
19
- @traffic_folder = 'logs'
20
- # Whether to output api traffic to terminal
21
- @output_to_terminal = false
22
- # Color shown when displaying in terminal
23
- @terminal_color = :light_blue
24
- # Whether to output API traffic to log file
25
- @output_to_file = true
26
- # Time test run. Will only be calculated once once called
27
- @time_test_run = Time.now.strftime('%Y-%m-%d_%H_%M_%S')
28
- # By default file is based on time
29
- @traffic_file = nil
30
- class << self
31
- # Folder to put API traffic logs
32
- attr_accessor :traffic_folder
33
- # Color shown when displaying in terminal
34
- attr_accessor :terminal_color
35
- # Readers for log parameters
36
- attr_reader :output_to_terminal, :output_to_file, :time_test_run
37
-
38
- # Set file to log traffic to
39
- def traffic_file=(file)
40
- @traffic_file = file
41
- reset_log
42
- end
43
-
44
- # @return [String] Traffic file to create logs at
45
- def traffic_file
46
- return File.join(traffic_folder, @traffic_file) if @traffic_file
47
-
48
- filename = "traffic_#{time_test_run}.log"
49
- File.join(traffic_folder, filename)
50
- end
51
-
52
- # Unset Logger object. It will be recreated on next time 'info' is called
53
- def reset_log
54
- @logger = nil
55
- end
56
-
57
- # Whether to log all API traffic
58
- def log_api_traffic=(set)
59
- @log_api_traffic = set
60
- reset_log
61
- end
62
-
63
- # @return [Boolean] Whether to log all API traffic
64
- def log_api_traffic?
65
- @log_api_traffic.nil? ? true : @log_api_traffic
66
- end
67
-
68
- # @param [Symbol, Boolean] value # Whether to output API traffic to log file
69
- def output_to_file=(value)
70
- @output_to_file = value
71
- reset_log
72
- end
73
-
74
- # @param [Symbol, Boolean] value # Whether to output API traffic to STDOUT
75
- def output_to_terminal=(value)
76
- @output_to_terminal = value
77
- reset_log
78
- end
79
-
80
- # Create new log file if necessary and setup logging level
81
- # @return [Logger] Logger class to record API traffic
82
- def create
83
- create_log_file
84
- @logger = ApiLogger.new(traffic_file) # Where request and responses of APIs are stored
85
- @logger.formatter = proc do |severity, datetime, _progname, msg|
86
- message = "SpecLog, [#{datetime.strftime('%Y-%m-%d_%H:%M:%S')}] #{severity} -- : #{msg}\n"
87
- print message.colorize(terminal_color) if @output_to_terminal
88
- message if @output_to_file
89
- end
90
- RestClient.log = @logger
91
- @logger
92
- end
93
-
94
- # Log a message using Soaspec logger
95
- # Logger (and it's file) will be created if it's not already set
96
- # @param [String] message The message to add to the logger
97
- def info(message)
98
- return unless log_api_traffic?
99
-
100
- create unless @logger
101
- if message.respond_to? :each
102
- message.each do |message_item|
103
- @logger.info(message_item)
104
- end
105
- else
106
- @logger.info(message)
107
- end
108
- end
109
-
110
- private
111
-
112
- # Create folder and file to store logs
113
- def create_log_file
114
- return if File.exist?(traffic_file)
115
-
116
- FileUtils.mkdir_p traffic_folder
117
- FileUtils.touch traffic_file
118
- end
119
- end
120
- end
121
- end
1
+ require 'logger'
2
+ require 'fileutils'
3
+ require 'colorize'
4
+
5
+ module Soaspec
6
+ # Custom class for logging API traffic
7
+ class ApiLogger < Logger
8
+ #
9
+ # Rewrite << to use info logger with formatting
10
+ #
11
+ def <<(msg)
12
+ info msg
13
+ end
14
+ end
15
+
16
+ # Handles logs of API requests and responses
17
+ class SpecLogger
18
+ # Folder to put API traffic logs
19
+ @traffic_folder = 'logs'
20
+ # Whether to output api traffic to terminal
21
+ @output_to_terminal = false
22
+ # Color shown when displaying in terminal
23
+ @terminal_color = :light_blue
24
+ # Whether to output API traffic to log file
25
+ @output_to_file = true
26
+ # Time test run. Will only be calculated once once called
27
+ @time_test_run = Time.now.strftime('%Y-%m-%d_%H_%M_%S')
28
+ # By default file is based on time
29
+ @traffic_file = nil
30
+ class << self
31
+ # Folder to put API traffic logs
32
+ attr_accessor :traffic_folder
33
+ # Color shown when displaying in terminal
34
+ attr_accessor :terminal_color
35
+ # Readers for log parameters
36
+ attr_reader :output_to_terminal, :output_to_file, :time_test_run
37
+
38
+ # Set file to log traffic to
39
+ def traffic_file=(file)
40
+ @traffic_file = file
41
+ reset_log
42
+ end
43
+
44
+ # @return [String] Traffic file to create logs at
45
+ def traffic_file
46
+ return File.join(traffic_folder, @traffic_file) if @traffic_file
47
+
48
+ filename = "traffic_#{time_test_run}.log"
49
+ File.join(traffic_folder, filename)
50
+ end
51
+
52
+ # Unset Logger object. It will be recreated on next time 'info' is called
53
+ def reset_log
54
+ @logger = nil
55
+ end
56
+
57
+ # Whether to log all API traffic
58
+ def log_api_traffic=(set)
59
+ @log_api_traffic = set
60
+ reset_log
61
+ end
62
+
63
+ # @return [Boolean] Whether to log all API traffic
64
+ def log_api_traffic?
65
+ @log_api_traffic.nil? ? true : @log_api_traffic
66
+ end
67
+
68
+ # @param [Symbol, Boolean] value # Whether to output API traffic to log file
69
+ def output_to_file=(value)
70
+ @output_to_file = value
71
+ reset_log
72
+ end
73
+
74
+ # @param [Symbol, Boolean] value # Whether to output API traffic to STDOUT
75
+ def output_to_terminal=(value)
76
+ @output_to_terminal = value
77
+ reset_log
78
+ end
79
+
80
+ # Create new log file if necessary and setup logging level
81
+ # @return [Logger] Logger class to record API traffic
82
+ def create
83
+ create_log_file
84
+ @logger = ApiLogger.new(traffic_file) # Where request and responses of APIs are stored
85
+ @logger.formatter = proc do |severity, datetime, _progname, msg|
86
+ message = "SpecLog, [#{datetime.strftime('%Y-%m-%d_%H:%M:%S')}] #{severity} -- : #{msg}\n"
87
+ print message.colorize(terminal_color) if @output_to_terminal
88
+ message if @output_to_file
89
+ end
90
+ RestClient.log = @logger
91
+ @logger
92
+ end
93
+
94
+ # Log a message using Soaspec logger
95
+ # Logger (and it's file) will be created if it's not already set
96
+ # @param [String] message The message to add to the logger
97
+ def info(message)
98
+ return unless log_api_traffic?
99
+
100
+ create unless @logger
101
+ if message.respond_to? :each
102
+ message.each do |message_item|
103
+ @logger.info(message_item)
104
+ end
105
+ else
106
+ @logger.info(message)
107
+ end
108
+ end
109
+
110
+ private
111
+
112
+ # Create folder and file to store logs
113
+ def create_log_file
114
+ return if File.exist?(traffic_file)
115
+
116
+ FileUtils.mkdir_p traffic_folder
117
+ FileUtils.touch traffic_file
118
+ end
119
+ end
120
+ end
121
+ end
@@ -1,28 +1,28 @@
1
- require 'erb'
2
-
3
- module Soaspec
4
- # Handles reading templates for tests
5
- class TemplateReader
6
- # Name of file where template is stored
7
- attr_accessor :template_name
8
-
9
- # @return [String] Path to where template file is stored
10
- def file_location
11
- File.join(*Soaspec.template_folder, template_name)
12
- end
13
-
14
- # @param [String] template_name File where template is stored
15
- # @return [String] Body of template after determining test_values
16
- def render_body(template_name, binding)
17
- self.template_name = template_name
18
- unless File.exist? file_location
19
- raise "Cannot see file at #{file_location}. "\
20
- "Global folder is '#{Soaspec.template_folder}' and filename is '#{template_name}'"
21
- end
22
- request_body = File.read file_location
23
- raise "Template at #{file_location} not parsed correctly" if request_body.strip.empty?
24
-
25
- ERB.new(request_body).result(binding)
26
- end
27
- end
28
- end
1
+ require 'erb'
2
+
3
+ module Soaspec
4
+ # Handles reading templates for tests
5
+ class TemplateReader
6
+ # Name of file where template is stored
7
+ attr_accessor :template_name
8
+
9
+ # @return [String] Path to where template file is stored
10
+ def file_location
11
+ File.join(*Soaspec.template_folder, template_name)
12
+ end
13
+
14
+ # @param [String] template_name File where template is stored
15
+ # @return [String] Body of template after determining test_values
16
+ def render_body(template_name, binding)
17
+ self.template_name = template_name
18
+ unless File.exist? file_location
19
+ raise "Cannot see file at #{file_location}. "\
20
+ "Global folder is '#{Soaspec.template_folder}' and filename is '#{template_name}'"
21
+ end
22
+ request_body = File.read file_location
23
+ raise "Template at #{file_location} not parsed correctly" if request_body.strip.empty?
24
+
25
+ ERB.new(request_body).result(binding)
26
+ end
27
+ end
28
+ end
@@ -1,91 +1,91 @@
1
- <?xml version="1.0"?>
2
- <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:tns="http://thomas-bayer.com/blz/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://thomas-bayer.com/blz/">
3
- <wsdl:documentation>BLZService</wsdl:documentation>
4
- <wsdl:types>
5
- <xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://thomas-bayer.com/blz/">
6
- <xsd:element name="getBank" type="tns:getBankType"/>
7
- <xsd:element name="getBankResponse" type="tns:getBankResponseType"/>
8
- <xsd:complexType name="getBankType">
9
- <xsd:sequence>
10
- <xsd:element name="blz" type="xsd:string"/>
11
- </xsd:sequence>
12
- </xsd:complexType>
13
- <xsd:complexType name="getBankResponseType">
14
- <xsd:sequence>
15
- <xsd:element name="details" type="tns:detailsType"/>
16
- </xsd:sequence>
17
- </xsd:complexType>
18
- <xsd:complexType name="detailsType">
19
- <xsd:sequence>
20
- <xsd:element minOccurs="0" name="bezeichnung" type="xsd:string"/>
21
- <xsd:element minOccurs="0" name="bic" type="xsd:string"/>
22
- <xsd:element maxOccurs="unbounded" minOccurs="0" name="ort" type="xsd:string"/>
23
- <xsd:element minOccurs="0" name="plz" type="xsd:string"/>
24
- </xsd:sequence>
25
- </xsd:complexType>
26
- </xsd:schema>
27
- </wsdl:types>
28
- <wsdl:message name="getBank">
29
- <wsdl:part name="parameters" element="tns:getBank"/>
30
- </wsdl:message>
31
- <wsdl:message name="getBankResponse">
32
- <wsdl:part name="parameters" element="tns:getBankResponse"/>
33
- </wsdl:message>
34
- <wsdl:portType name="BLZServicePortType">
35
- <wsdl:operation name="getBank">
36
- <wsdl:input message="tns:getBank"/>
37
- <!--<wsdl:output message="tns:getBankResponse" wsaw:Action="http://thomas-bayer.com/blz/BLZService/getBankResponse"/>-->
38
- <wsdl:output message="tns:getBankResponse" wsaw:Action="http://localhost:4567/BLZService/getBankResponse"/>
39
- </wsdl:operation>
40
- </wsdl:portType>
41
- <wsdl:binding name="BLZServiceSOAP11Binding" type="tns:BLZServicePortType">
42
- <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
43
- <wsdl:operation name="getBank">
44
- <soap:operation style="document" soapAction=""/>
45
- <wsdl:input>
46
- <soap:body use="literal"/>
47
- </wsdl:input>
48
- <wsdl:output>
49
- <soap:body use="literal"/>
50
- </wsdl:output>
51
- </wsdl:operation>
52
- </wsdl:binding>
53
- <wsdl:binding name="BLZServiceSOAP12Binding" type="tns:BLZServicePortType">
54
- <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
55
- <wsdl:operation name="getBank">
56
- <soap12:operation style="document" soapAction=""/>
57
- <wsdl:input>
58
- <soap12:body use="literal"/>
59
- </wsdl:input>
60
- <wsdl:output>
61
- <soap12:body use="literal"/>
62
- </wsdl:output>
63
- </wsdl:operation>
64
- </wsdl:binding>
65
- <wsdl:binding name="BLZServiceHttpBinding" type="tns:BLZServicePortType">
66
- <http:binding verb="POST"/>
67
- <wsdl:operation name="getBank">
68
- <http:operation location="BLZService/getBank"/>
69
- <wsdl:input>
70
- <mime:content part="getBank" type="text/xml"/>
71
- </wsdl:input>
72
- <wsdl:output>
73
- <mime:content part="getBank" type="text/xml"/>
74
- </wsdl:output>
75
- </wsdl:operation>
76
- </wsdl:binding>
77
- <wsdl:service name="BLZService">
78
- <wsdl:port name="BLZServiceSOAP11port_http" binding="tns:BLZServiceSOAP11Binding">
79
- <!-- <soap:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/> -->
80
- <soap:address location="http://localhost:4999/BLZService"/>
81
- </wsdl:port>
82
- <wsdl:port name="BLZServiceSOAP12port_http" binding="tns:BLZServiceSOAP12Binding">
83
- <!--<soap12:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/>-->
84
- <soap12:address location="http://localhost:4999/BLZService"/>
85
- </wsdl:port>
86
- <wsdl:port name="BLZServiceHttpport" binding="tns:BLZServiceHttpBinding">
87
- <!--<http:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/>-->
88
- <soap:address location="http://localhost:4999/BLZService"/>
89
- </wsdl:port>
90
- </wsdl:service>
1
+ <?xml version="1.0"?>
2
+ <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:tns="http://thomas-bayer.com/blz/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://thomas-bayer.com/blz/">
3
+ <wsdl:documentation>BLZService</wsdl:documentation>
4
+ <wsdl:types>
5
+ <xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://thomas-bayer.com/blz/">
6
+ <xsd:element name="getBank" type="tns:getBankType"/>
7
+ <xsd:element name="getBankResponse" type="tns:getBankResponseType"/>
8
+ <xsd:complexType name="getBankType">
9
+ <xsd:sequence>
10
+ <xsd:element name="blz" type="xsd:string"/>
11
+ </xsd:sequence>
12
+ </xsd:complexType>
13
+ <xsd:complexType name="getBankResponseType">
14
+ <xsd:sequence>
15
+ <xsd:element name="details" type="tns:detailsType"/>
16
+ </xsd:sequence>
17
+ </xsd:complexType>
18
+ <xsd:complexType name="detailsType">
19
+ <xsd:sequence>
20
+ <xsd:element minOccurs="0" name="bezeichnung" type="xsd:string"/>
21
+ <xsd:element minOccurs="0" name="bic" type="xsd:string"/>
22
+ <xsd:element maxOccurs="unbounded" minOccurs="0" name="ort" type="xsd:string"/>
23
+ <xsd:element minOccurs="0" name="plz" type="xsd:string"/>
24
+ </xsd:sequence>
25
+ </xsd:complexType>
26
+ </xsd:schema>
27
+ </wsdl:types>
28
+ <wsdl:message name="getBank">
29
+ <wsdl:part name="parameters" element="tns:getBank"/>
30
+ </wsdl:message>
31
+ <wsdl:message name="getBankResponse">
32
+ <wsdl:part name="parameters" element="tns:getBankResponse"/>
33
+ </wsdl:message>
34
+ <wsdl:portType name="BLZServicePortType">
35
+ <wsdl:operation name="getBank">
36
+ <wsdl:input message="tns:getBank"/>
37
+ <!--<wsdl:output message="tns:getBankResponse" wsaw:Action="http://thomas-bayer.com/blz/BLZService/getBankResponse"/>-->
38
+ <wsdl:output message="tns:getBankResponse" wsaw:Action="http://localhost:4567/BLZService/getBankResponse"/>
39
+ </wsdl:operation>
40
+ </wsdl:portType>
41
+ <wsdl:binding name="BLZServiceSOAP11Binding" type="tns:BLZServicePortType">
42
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
43
+ <wsdl:operation name="getBank">
44
+ <soap:operation style="document" soapAction=""/>
45
+ <wsdl:input>
46
+ <soap:body use="literal"/>
47
+ </wsdl:input>
48
+ <wsdl:output>
49
+ <soap:body use="literal"/>
50
+ </wsdl:output>
51
+ </wsdl:operation>
52
+ </wsdl:binding>
53
+ <wsdl:binding name="BLZServiceSOAP12Binding" type="tns:BLZServicePortType">
54
+ <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
55
+ <wsdl:operation name="getBank">
56
+ <soap12:operation style="document" soapAction=""/>
57
+ <wsdl:input>
58
+ <soap12:body use="literal"/>
59
+ </wsdl:input>
60
+ <wsdl:output>
61
+ <soap12:body use="literal"/>
62
+ </wsdl:output>
63
+ </wsdl:operation>
64
+ </wsdl:binding>
65
+ <wsdl:binding name="BLZServiceHttpBinding" type="tns:BLZServicePortType">
66
+ <http:binding verb="POST"/>
67
+ <wsdl:operation name="getBank">
68
+ <http:operation location="BLZService/getBank"/>
69
+ <wsdl:input>
70
+ <mime:content part="getBank" type="text/xml"/>
71
+ </wsdl:input>
72
+ <wsdl:output>
73
+ <mime:content part="getBank" type="text/xml"/>
74
+ </wsdl:output>
75
+ </wsdl:operation>
76
+ </wsdl:binding>
77
+ <wsdl:service name="BLZService">
78
+ <wsdl:port name="BLZServiceSOAP11port_http" binding="tns:BLZServiceSOAP11Binding">
79
+ <!-- <soap:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/> -->
80
+ <soap:address location="http://localhost:4999/BLZService"/>
81
+ </wsdl:port>
82
+ <wsdl:port name="BLZServiceSOAP12port_http" binding="tns:BLZServiceSOAP12Binding">
83
+ <!--<soap12:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/>-->
84
+ <soap12:address location="http://localhost:4999/BLZService"/>
85
+ </wsdl:port>
86
+ <wsdl:port name="BLZServiceHttpport" binding="tns:BLZServiceHttpBinding">
87
+ <!--<http:address location="http://www.thomas-bayer.com/axis2/services/BLZService"/>-->
88
+ <soap:address location="http://localhost:4999/BLZService"/>
89
+ </wsdl:port>
90
+ </wsdl:service>
91
91
  </wsdl:definitions>