BankControl.jcx Sample
This topic inludes the source code for the BankControl.jcx Sample.
Sample Location
This sample is located in the following directory in your WebLogic Workshop installation:
BEA_HOME/weblogic81/samples/workshop/SamplesApp/WebServices/security/roleBased/
Sample Source Code
001 package security.roleBased;
002
003 /**
004 * @jc:location http-url="https://localhost:7002/WebServices/security/roleBased/Bank.jws"
005 * @jc:wsdl file="#BankWsdl"
006 */
007 public interface BankControl extends com.bea.control.ControlExtension, com.bea.control.ServiceControl
008 {
009 public static class StartHeader
010 implements java.io.Serializable
011 {
012 public java.lang.String conversationID;
013 public java.lang.String callbackLocation;
014 }
015
016 public static class ContinueHeader
017 implements java.io.Serializable
018 {
019 public java.lang.String conversationID;
020 }
021
022 public static class CallbackHeader
023 implements java.io.Serializable
024 {
025 public java.lang.String conversationID;
026 }
027
028
029 public interface Callback extends com.bea.control.ServiceControl.Callback
030 {
031 /**
032 * @jc:conversation phase="finish"
033 */
034 public void onResultComplete (java.lang.String accountID, java.lang.String resultMessage);
035
036 }
037
038 /**
039 * @jc:conversation phase="start"
040 */
041 public void doesAccountHaveSufficientBalance (java.lang.String accountID, int amount);
042
043 static final long serialVersionUID = 1L;
044 }
045
046 /** @common:define name="BankWsdl" value::
047 <?xml version="1.0" encoding="utf-8"?>
048 <!-- @editor-info:link autogen="true" source="Bank.jws" -->
049 <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/" xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://workshop.bea.com/Bank" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://workshop.bea.com/Bank">
050 <types>
051 <s:schema elementFormDefault="qualified" targetNamespace="http://workshop.bea.com/Bank" xmlns:s="http://www.w3.org/2001/XMLSchema">
052 <s:element name="onResultCompleteResponse">
053 <s:complexType>
054 <s:sequence/>
055 </s:complexType>
056 </s:element>
057 <s:element name="onResultComplete">
058 <s:complexType>
059 <s:sequence>
060 <s:element name="accountID" type="s:string" minOccurs="0"/>
061 <s:element name="resultMessage" type="s:string" minOccurs="0"/>
062 </s:sequence>
063 </s:complexType>
064 </s:element>
065 <s:element name="doesAccountHaveSufficientBalance">
066 <s:complexType>
067 <s:sequence>
068 <s:element name="accountID" type="s:string" minOccurs="0"/>
069 <s:element name="amount" type="s:int"/>
070 </s:sequence>
071 </s:complexType>
072 </s:element>
073 <s:element name="doesAccountHaveSufficientBalanceResponse">
074 <s:complexType>
075 <s:sequence/>
076 </s:complexType>
077 </s:element>
078 </s:schema>
079
080 <s:schema elementFormDefault="qualified" targetNamespace="http://www.openuri.org/2002/04/soap/conversation/">
081 <s:element name="StartHeader" type="conv:StartHeader"/>
082 <s:element name="ContinueHeader" type="conv:ContinueHeader"/>
083 <s:element name="CallbackHeader" type="conv:CallbackHeader"/>
084 <s:complexType name="StartHeader">
085 <s:sequence>
086 <s:element minOccurs="0" maxOccurs="1" name="conversationID" type="s:string"/>
087 <s:element minOccurs="0" maxOccurs="1" name="callbackLocation" type="s:string"/>
088 </s:sequence>
089 </s:complexType>
090 <s:complexType name="ContinueHeader">
091 <s:sequence>
092 <s:element minOccurs="1" maxOccurs="1" name="conversationID" type="s:string"/>
093 </s:sequence>
094 </s:complexType>
095 <s:complexType name="CallbackHeader">
096 <s:sequence>
097 <s:element minOccurs="1" maxOccurs="1" name="conversationID" type="s:string"/>
098 </s:sequence>
099 </s:complexType>
100 </s:schema>
101 </types>
102 <message name="onResultCompleteSoapIn">
103 <part name="parameters" element="s0:onResultCompleteResponse"/>
104 </message>
105 <message name="onResultCompleteSoapOut">
106 <part name="parameters" element="s0:onResultComplete"/>
107 </message>
108 <message name="doesAccountHaveSufficientBalanceSoapIn">
109 <part name="parameters" element="s0:doesAccountHaveSufficientBalance"/>
110 </message>
111 <message name="doesAccountHaveSufficientBalanceSoapOut">
112 <part name="parameters" element="s0:doesAccountHaveSufficientBalanceResponse"/>
113 </message>
114 <message name="onResultCompleteHttpGetIn"/>
115 <message name="onResultCompleteHttpGetOut">
116 <part name="accountID" type="s:string"/>
117 <part name="resultMessage" type="s:string"/>
118 </message>
119 <message name="doesAccountHaveSufficientBalanceHttpGetIn">
120 <part name="accountID" type="s:string"/>
121 <part name="amount" type="s:string"/>
122 </message>
123 <message name="doesAccountHaveSufficientBalanceHttpGetOut"/>
124 <message name="onResultCompleteHttpPostIn"/>
125 <message name="onResultCompleteHttpPostOut">
126 <part name="accountID" type="s:string"/>
127 <part name="resultMessage" type="s:string"/>
128 </message>
129 <message name="doesAccountHaveSufficientBalanceHttpPostIn">
130 <part name="accountID" type="s:string"/>
131 <part name="amount" type="s:string"/>
132 </message>
133 <message name="doesAccountHaveSufficientBalanceHttpPostOut"/>
134 <message name="StartHeader_literal">
135 <part name="StartHeader" element="conv:StartHeader"/>
136 </message>
137 <message name="CallbackHeader_literal">
138 <part name="CallbackHeader" element="conv:CallbackHeader"/>
139 </message>
140 <portType name="BankSoap">
141 <operation name="onResultComplete">
142 <output message="s0:onResultCompleteSoapOut"/>
143 <input message="s0:onResultCompleteSoapIn"/>
144 </operation>
145 <operation name="doesAccountHaveSufficientBalance">
146 <input message="s0:doesAccountHaveSufficientBalanceSoapIn"/>
147 <output message="s0:doesAccountHaveSufficientBalanceSoapOut"/>
148 </operation>
149 </portType>
150 <portType name="BankHttpGet">
151 <operation name="onResultComplete">
152 <output message="s0:onResultCompleteHttpGetOut"/>
153 <input message="s0:onResultCompleteHttpGetIn"/>
154 </operation>
155 <operation name="doesAccountHaveSufficientBalance">
156 <input message="s0:doesAccountHaveSufficientBalanceHttpGetIn"/>
157 <output message="s0:doesAccountHaveSufficientBalanceHttpGetOut"/>
158 </operation>
159 </portType>
160 <portType name="BankHttpPost">
161 <operation name="onResultComplete">
162 <output message="s0:onResultCompleteHttpPostOut"/>
163 <input message="s0:onResultCompleteHttpPostIn"/>
164 </operation>
165 <operation name="doesAccountHaveSufficientBalance">
166 <input message="s0:doesAccountHaveSufficientBalanceHttpPostIn"/>
167 <output message="s0:doesAccountHaveSufficientBalanceHttpPostOut"/>
168 </operation>
169 </portType>
170 <binding name="BankSoap" type="s0:BankSoap">
171 <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
172 <operation name="onResultComplete">
173 <soap:operation soapAction="http://workshop.bea.com/Bank/onResultComplete" style="document"/>
174 <cw:transition phase="finish"/>
175 <input>
176 <soap:body use="literal"/>
177 </input>
178 <output>
179 <soap:body use="literal"/>
180 <soap:header wsdl:required="true" message="s0:CallbackHeader_literal" part="CallbackHeader" use="literal" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"/>
181 </output>
182 </operation>
183 <operation name="doesAccountHaveSufficientBalance">
184 <soap:operation soapAction="http://workshop.bea.com/Bank/doesAccountHaveSufficientBalance" style="document"/>
185 <cw:transition phase="start"/>
186 <input>
187 <soap:body use="literal"/>
188 <soap:header wsdl:required="true" message="s0:StartHeader_literal" part="StartHeader" use="literal" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"/>
189 </input>
190 <output>
191 <soap:body use="literal"/>
192 </output>
193 </operation>
194 </binding>
195 <binding name="BankHttpGet" type="s0:BankHttpGet">
196 <http:binding verb="GET"/>
197 <operation name="onResultComplete">
198 <http:operation location="/onResultComplete"/>
199 <cw:transition phase="finish"/>
200 <input>
201 <mime:mimeXml part="Body"/>
202 </input>
203 <output>
204 <http:urlEncoded/>
205 </output>
206 </operation>
207 <operation name="doesAccountHaveSufficientBalance">
208 <http:operation location="/doesAccountHaveSufficientBalance"/>
209 <cw:transition phase="start"/>
210 <input>
211 <http:urlEncoded/>
212 </input>
213 <output/>
214 </operation>
215 </binding>
216 <binding name="BankHttpPost" type="s0:BankHttpPost">
217 <http:binding verb="POST"/>
218 <operation name="onResultComplete">
219 <http:operation location="/onResultComplete"/>
220 <cw:transition phase="finish"/>
221 <input>
222 <mime:mimeXml part="Body"/>
223 </input>
224 <output>
225 <mime:content type="application/x-www-form-urlencoded"/>
226 </output>
227 </operation>
228 <operation name="doesAccountHaveSufficientBalance">
229 <http:operation location="/doesAccountHaveSufficientBalance"/>
230 <cw:transition phase="start"/>
231 <input>
232 <mime:content type="application/x-www-form-urlencoded"/>
233 </input>
234 <output/>
235 </operation>
236 </binding>
237 <service name="Bank">
238 <port name="BankSoap" binding="s0:BankSoap">
239 <soap:address location="http://localhost:7001/WebServices/security/roleBased/Bank.jws"/>
240 </port>
241 <port name="BankHttpGet" binding="s0:BankHttpGet">
242 <http:address location="http://localhost:7001/WebServices/security/roleBased/Bank.jws"/>
243 </port>
244 <port name="BankHttpPost" binding="s0:BankHttpPost">
245 <http:address location="http://localhost:7001/WebServices/security/roleBased/Bank.jws"/>
246 </port>
247 </service>
248 </definitions>
249 * ::
250 */
|