Web Service parsing Policy tag

VA Smalltalk is a "100% VisualAge compatible" IDE that includes the original VisualAge technology and the popular VA Assist and WidgetKit add-ons.

Moderators: Eric Clayberg, wembley, tc, Diane Engles, solveig

Web Service parsing Policy tag

Postby nchillo » Mon Nov 03, 2008 5:21 am

I am trying to invoke a 3rd part webservice but i'm having problems when deploying the Policy Tag in the following ws:

Code: Select all
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="http://tempuri.org/" xmlns:tns="http://tempuri.org/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
.....
- <wsp:Policy wsu:Id="SecTokenPolicy" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsrmp="http://schemas.xmlsoap.org/ws/2005/02/rm/policy" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
- <wsp:ExactlyOne>
- <wsp:All alternative-id="SecTokenPolicyAlt">
- <wsse:SecurityToken xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
  <wsse:TokenType>wsse:UserNameToken</wsse:TokenType>
- <wsse:Claims>
  <wsse:UsePassword Type="wsse:Text" />
  <wsse:SubjectName>ws</wsse:SubjectName>
  </wsse:Claims>
  </wsse:SecurityToken>
  </wsp:All>
  </wsp:ExactlyOne>
  </wsp:Policy>
  </wsdl:definitions>


Te error happens when the Xml Deserializer does not find a handler for tagName = 'Policy'.
It seems like i am missing a handler. I need expert help :wink:
Thanks,
Nicolas
nchillo
 
Posts: 9
Joined: Mon Nov 03, 2008 4:37 am

Re: Web Service parsing Policy tag

Postby Diane Engles » Wed Nov 05, 2008 1:26 pm

Hi Nicolas,

Could you post the stack trace you are getting and the complete wsdl definitions document? I can't really tell much about what might be going wrong from the snippets you posted.

Thanks,

Diane
Instantiations Smalltalk Support
diane@instantiations.com
Diane Engles
Moderator
 
Posts: 66
Joined: Mon Oct 16, 2006 2:40 pm

Re: Web Service parsing Policy tag

Postby nchillo » Thu Nov 06, 2008 12:18 pm

Hi Diane,

Thanks for the answer.
I am trying to deploy the following webservice:
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://tempuri.org/" xmlns:tns="http://tempuri.org/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
            <xsd:element name="wsSonicConsulta" type="xsd:string">
            </xsd:element>
            <xsd:element name="wsSonicConsultaResponse" type="xsd:string">
            </xsd:element>
        </xsd:schema>
  </wsdl:types>
  <wsdl:message name="wsSonicConsultaSoapIn">
    <wsdl:part name="parameters" element="tns:wsSonicConsulta"/>
  </wsdl:message>
  <wsdl:message name="wsSonicConsultaSoapOut">
    <wsdl:part name="parameters" element="tns:wsSonicConsultaResponse"/>
  </wsdl:message>
  <wsdl:portType name="wsSonicSoap">
    <wsdl:operation name="wsSonicConsulta">
      <wsdl:input message="tns:wsSonicConsultaSoapIn"/>
      <wsdl:output message="tns:wsSonicConsultaSoapOut"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="wsSonicSoap" type="tns:wsSonicSoap">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="wsSonicConsulta">
      <soap:operation soapAction="http://tempuri.org/wsSonicConsulta" style="document"/>
      <wsdl:input>
    <wsp:PolicyReference URI="#SecTokenPolicy"/>        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="wsSonic">
    <wsdl:port name="wsSonicSoap" binding="tns:wsSonicSoap">
      <soap:address location="https://bue-07-dbs:3511/wsSonic"/>
    </wsdl:port>
  </wsdl:service>
    <wsp:Policy wsu:Id="SecTokenPolicy" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsrmp="http://schemas.xmlsoap.org/ws/2005/02/rm/policy" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
                <wsp:ExactlyOne>
                    <wsp:All alternative-id="SecTokenPolicyAlt">
                        <wsse:SecurityToken xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
                           <wsse:TokenType>wsse:UserNameToken</wsse:TokenType>
                            <wsse:Claims>
                                <wsse:UsePassword Type="wsse:Text"/>
                                <wsse:SubjectName>ws</wsse:SubjectName>
                            </wsse:Claims>
                        </wsse:SecurityToken>
                    </wsp:All>
                </wsp:ExactlyOne>
    </wsp:Policy>
</wsdl:definitions>


The smalltalk code i am using is:
Code: Select all
|aContainer  service |
aContainer := SstWSContainer containerNamed:  'TEST'
   ifNone: [ SstWSContainer createContainerNamed: 'TEST' ].
aContainer deploy: 'https://bue-07-dbs:3511/wsSonic.wsdl'.


When parsing de WSDL i am getting the following error:
Unable to process element ''wsp:Policy''

Here´s the stack:
Code: Select all
Debugger Stack Trace Report:
Error String: 'An error occurred during web service deployment.'
Resumable: true

UIProcess
   Name: (06/11/2008 18:03:46)
   Process State: suspended
   Priority: 3


System Configuration Dump


Copyright:

   VA Smalltalk V7.5.2 ; Image: 7.5.2
   VM Timestamp: 4.0,(NC) 6/12/2007 (74)
   (C) Copyright Instantiations 1994, 2007.  All rights reserved.
   (C) Copyright International Business Machines Corp. 1994, 2006.  All rights reserved.

Time:  18:08:58
Date:  06/11/2008

Platform:

   Virtual machine:  ES
   Bytecode version:  4.0
   Manager version:  4.00
   'OS' subsystem:  'WIN32s'
   'CLIM' subsystem:  'ES'
   'CP' subsystem:  'WIN32s'
   'CLDT' subsystem:  'ES'
   'CFS' subsystem:  'WIN32s'
   'SCI' subsystem:  'WIN'
   'CW' subsystem:  'WIN32s'
   'CPM' subsystem:  'ES'
   'CG' subsystem:  'WIN32s'
   'CPIC' subsystem:  'WIN32s'

Current user:  Library Supervisor

Connected Library:

   Pathname:  C:\Program Files\Instantiations\VA Smalltalk\7.5\manager\mgr75.dat

INFO: Trapped error dumping system configuration.
=============<STACK TRACE BEGINS>============
[] in <optimized block>(ExceptionalEvent class)>>#initializeSystemExceptions
   signal=Signal on Exception: An error occurred during web service deployment.
Signal>>#evaluate:
   self=Signal on Exception: An error occurred during web service deployment.
   aBlock=[] in ExceptionalEvent class>>#initializeSystemExceptions
ExceptionalEvent>>#applyDefaultHandler:
   self=Exception: An error occurred during web service deployment.
   aSignal=Signal on Exception: An error occurred during web service deployment.
   exception=Exception: (ExError) An error has occurred.
ExceptionalEvent>>#signalWithArguments:
   self=Exception: An error occurred during web service deployment.
   arguments=(SstUnknownError((XML mapping error ##ObjectInitializationError: 'Unable to process element ''wsp:Policy''')))
   signal=Signal on Exception: An error occurred during web service deployment.
   handler=nil
ExceptionalEvent>>#signalWith:
   self=Exception: An error occurred during web service deployment.
   arg1=SstUnknownError((XML mapping error ##ObjectInitializationError: 'Unable to process element ''wsp:Policy'''))
[] in <optimized block>(AbtXmlDeserializationConfiguration class)>>#newWsdlConfiguration
   aSignal=Signal on Exception: SGML exception
Signal>>#evaluate:
   self=Signal on Exception: SGML exception
   aBlock=[] in AbtXmlDeserializationConfiguration class>>#newWsdlConfiguration
[] in BlockContextTemplate(Block)>>#when:do:exitWith:retryReturn:
   self=[] in AbtXmlMappingParser>>#parseURI:
   exception=an ExceptionalEventCollection
   handlerBlock=[] in AbtXmlDeserializationConfiguration class>>#newWsdlConfiguration
   exitBlock=[] in Block>>#when:do:
   knownResult=an Object
   retryBlock=[] in Block>>#when:do:exitWith:retryReturn:
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=nil
   signal=Signal on Exception: SGML exception
[] in BlockContextTemplate(Block)>>#when:do:exitWith:retryReturn:
   self=[] in AbtXmlSaxParser>>#parse
   exception=Exception: SGML exception
   handlerBlock=[] in AbtXmlSaxParser>>#execute:
   exitBlock=[] in Block>>#when:do:
   knownResult=an Object
   retryBlock=[] in Block>>#when:do:exitWith:retryReturn:
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=[] in Block>>#when:do:exitWith:retryReturn:
   signal=Signal on Exception: SGML exception
ExceptionalEvent>>#signalWithArguments:
   self=Exception: SGML exception
   arguments=(XML mapping error ##ObjectInitializationError: 'Unable to process element ''wsp:Policy''')
   signal=Signal on Exception: SGML exception
   handler=[] in Block>>#when:do:exitWith:retryReturn:
ExceptionalEvent>>#signalWith:
   self=Exception: SGML exception
   arg1=XML mapping error ##ObjectInitializationError: 'Unable to process element ''wsp:Policy'''
AbtXmlMappingError(SgmlSyntaxError)>>#signalException
   self=XML mapping error ##ObjectInitializationError: 'Unable to process element ''wsp:Policy'''
AbtXmlSchemaInputDeserializer>>#initializeObjectFor:type:
   self=an AbtXmlSchemaInputDeserializer
   anAbtXmlMappedElement=an AbtXmlMappedRootElement('wsdl:definitions')
   anAbtXmlSchemaType=an AbtXmlSchemaElement(definitions)
   creationContext=an AbtXmlMappedObjectCreationContext
   element=an AbtXmlMappedElement('wsp:Policy')
AbtXmlSchemaInputDeserializer>>#initializeObjectFor:
   self=an AbtXmlSchemaInputDeserializer
   anAbtXmlMappedObject=an AbtXmlMappedRootElement('wsdl:definitions')
AbtXmlMappedRootElement(AbtXmlMappedObject)>>#initializeObjectUsing:
   self=an AbtXmlMappedRootElement('wsdl:definitions')
   anAbtXmlInputDeserializer=an AbtXmlSchemaInputDeserializer
SstWsdlSaxHandler(AbtXmlMappedContentHandler)>>#initializeObjectFor:
   self=a SstWsdlSaxHandler
   anAbtXmlMappedElement=an AbtXmlMappedRootElement('wsdl:definitions')
SstWsdlSaxHandler(AbtXmlMappedContentHandler)>>#endElement:rawName:uri:
   self=a SstWsdlSaxHandler
   aLocalName='definitions'
   aRawName='wsdl:definitions'
   aUriString='http://schemas.xmlsoap.org/wsdl/'
   popElement=an AbtXmlMappedRootElement('wsdl:definitions')
   current=nil
AbtXmlMappingParser(AbtXmlSaxParser)>>#endElement:rawName:uri:
   self=an AbtXmlMappingParser
   aLocalName='definitions'
   aRawName='wsdl:definitions'
   aUriString='http://schemas.xmlsoap.org/wsdl/'
AbtXmlMappingParser>>#endElement:rawName:uri:
   self=an AbtXmlMappingParser
   aLocalName='definitions'
   aRawName='wsdl:definitions'
   aUriString='http://schemas.xmlsoap.org/wsdl/'
   handler=nil
AbtXmlMappingParser(AbtXmlSaxParser)>>#endTag:
   self=an AbtXmlMappingParser
   aTagName='wsdl:definitions'
   element=an AbtXmlElementSpec
AbtXmlMappingParser(AbtXmlSaxParser)>>#parseEndTag
   self=an AbtXmlMappingParser
   aTagName='wsdl:definitions'
AbtXmlMappingParser(AbtXmlSaxParser)>>#parseAny
   self=an AbtXmlMappingParser
   inStream=a ReadStream
SgmlAnyData class(SgmlData class)>>#parseWith:
   self=SgmlAnyData
   aSgmlParser=an AbtXmlMappingParser
AbtXmlMappingParser(AbtXmlSaxParser)>>#parseData:
   self=an AbtXmlMappingParser
   aSgmlData=SgmlAnyData
   inStream=a ReadStream
[] in AbtXmlMappingParser(AbtXmlSaxParser)>>#parse
   self=an AbtXmlMappingParser
BlockContextTemplate(Block)>>#valueWithErrorHandler:oldHandler:onReturnDo:
   self=[] in AbtXmlSaxParser>>#parse
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=[] in Block>>#when:do:exitWith:retryReturn:
   completionBlock=[]
BlockContextTemplate(Block)>>#when:do:exitWith:retryReturn:
   self=[] in AbtXmlSaxParser>>#parse
   exception=Exception: SGML exception
   handlerBlock=[] in AbtXmlSaxParser>>#execute:
   exitBlock=[] in Block>>#when:do:
   knownResult=an Object
   retryBlock=[] in Block>>#when:do:exitWith:retryReturn:
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=[] in Block>>#when:do:exitWith:retryReturn:
BlockContextTemplate(Block)>>#when:do:
   self=[] in AbtXmlSaxParser>>#parse
   exception=Exception: SGML exception
   handlerBlock=[] in AbtXmlSaxParser>>#execute:
   knownResult=an Object
   result=nil
AbtXmlMappingParser(AbtXmlSaxParser)>>#execute:
   self=an AbtXmlMappingParser
   aBlock=[] in AbtXmlSaxParser>>#parse
AbtXmlMappingParser(AbtXmlSaxParser)>>#parse
   self=an AbtXmlMappingParser
AbtXmlMappingParser(AbtXmlSaxParser)>>#primParseStream:
   self=an AbtXmlMappingParser
   aStream=a ReadStream
   temp=nil
AbtXmlMappingParser(AbtXmlSaxParser)>>#parseResource:
   self=an AbtXmlMappingParser
   aResource=an AbtXmlInputSource
   result=nil
[] in AbtXmlMappingParser>>#parseURI:
   self=an AbtXmlMappingParser
   aURIString='https://bue-07-dbs:3511/wsSonic?wsdl'
   resource=an AbtXmlInputSource
BlockContextTemplate(Block)>>#valueWithErrorHandler:oldHandler:onReturnDo:
   self=[] in AbtXmlMappingParser>>#parseURI:
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=nil
   completionBlock=[]
BlockContextTemplate(Block)>>#when:do:exitWith:retryReturn:
   self=[] in AbtXmlMappingParser>>#parseURI:
   exception=an ExceptionalEventCollection
   handlerBlock=[] in AbtXmlDeserializationConfiguration class>>#newWsdlConfiguration
   exitBlock=[] in Block>>#when:do:
   knownResult=an Object
   retryBlock=[] in Block>>#when:do:exitWith:retryReturn:
   handler=[] in Block>>#when:do:exitWith:retryReturn:
   oldHandler=nil
BlockContextTemplate(Block)>>#when:do:
   self=[] in AbtXmlMappingParser>>#parseURI:
   exception=an ExceptionalEventCollection
   handlerBlock=[] in AbtXmlDeserializationConfiguration class>>#newWsdlConfiguration
   knownResult=an Object
   result=nil
AbtXmlMappingParser>>#applyErrorHandlerWhile:
   self=an AbtXmlMappingParser
   aBlock=[] in AbtXmlMappingParser>>#parseURI:
   config=an AbtXmlDeserializationConfiguration
AbtXmlMappingParser>>#parseURI:
   self=an AbtXmlMappingParser
   aURIString='https://bue-07-dbs:3511/wsSonic?wsdl'
   resource=an AbtXmlInputSource
SstWSWsdlStrategy(SstWSDeploymentStrategy)>>#buildRuntimeWSDL:using:
   self=a SstWSWsdlStrategy
   aUrl='https://bue-07-dbs:3511/wsSonic?wsdl'
   aContainer=a SstWSContainer (UNITRADE)
   result=nil
SstWSWsdlStrategy>>#deploy:into:using:
   self=a SstWSWsdlStrategy
   aUrl='https://bue-07-dbs:3511/wsSonic?wsdl'
   aContainer=a SstWSContainer (UNITRADE)
   anSstWSDeploymentDescriptor=nil
   webServiceDefinitions=nil
   deploymentDescriptor=nil
   services=nil
SstWSWsdlStrategy>>#deploy:into:
   self=a SstWSWsdlStrategy
   aUrl='https://bue-07-dbs:3511/wsSonic?wsdl'
   aContainer=a SstWSContainer (UNITRADE)
[] in SstWSIndeterminateStrategy>>#deploy:into:
   self=a SstWSIndeterminateStrategy
   aString='https://bue-07-dbs:3511/wsSonic?wsdl'
   aContainer=a SstWSContainer (UNITRADE)
   aDom=an AbtDOMDocument
   aDeploymentStrategy=a SstWSWsdlStrategy
SstWSWsdlStrategy(Object)>>#ifNotNil:
   self=a SstWSWsdlStrategy
   aOneArgumentBlock=[] in SstWSIndeterminateStrategy>>#deploy:into:
SstWSIndeterminateStrategy>>#deploy:into:
   self=a SstWSIndeterminateStrategy
   aString='https://bue-07-dbs:3511/wsSonic?wsdl'
   aContainer=a SstWSContainer (UNITRADE)
   aDom=an AbtDOMDocument
SstWSDeploymentManager>>#deploy:
   self=a SstWSDeploymentManager
   anObject='https://bue-07-dbs:3511/wsSonic?wsdl'
SstWSContainer>>#deploy:
   self=a SstWSContainer (UNITRADE)
   anObject='https://bue-07-dbs:3511/wsSonic?wsdl'
[] in <optimized block>(UndefinedObject)>>#Doit
   aContainer=a SstWSContainer (UNITRADE)
   service=nil
UndefinedObject>>#Doit
   self=nil
   workspaceVariableResult=nil
EsCompiler class>>#evaluateForNil:additionalPoolNames:ifFail:
   self=EsCompiler
   sourceString='| workspaceVariableResult |
workspaceVariableResult := [|aContainer  service |

aContainer := SstWSContainer containerNamed:  ''UNITRADE''
   ifNone: [ SstWSContainer createContainerNamed: ''UNITRADE'' ].
aContainer deploy: ''https://bue-07-dbs:3511/wsSonic?wsdl''.] value.
workspaceVariableResult'
   additionalPoolNames=(#CfsConstants #CgConstants #CwConstants #CldtConstants #SystemExceptions)
   exceptionHandler=[] in StsWorkspace>>#evaluateSelectionIn:ifFail:
   descriptor=UndefinedObject:initialized
   result=an EsCompilationResult
StsWorkspace(EtWindow)>>#evaluate:for:ifFail:
   self=a StsWorkspace
   text='| workspaceVariableResult |
workspaceVariableResult := [|aContainer  service |

aContainer := SstWSContainer containerNamed:  ''UNITRADE''
   ifNone: [ SstWSContainer createContainerNamed: ''UNITRADE'' ].
aContainer deploy: ''https://bue-07-dbs:3511/wsSonic?wsdl''.] value.
workspaceVariableResult'
   doitReceiver=nil
   exceptionHandler=[] in StsWorkspace>>#evaluateSelectionIn:ifFail:
[] in StsWorkspace>>#evaluateSelectionIn:ifFail:
   self=a StsWorkspace
   aWidget=CwText(text)
   failBlock=[]
   text='   |aContainer  service |

aContainer := SstWSContainer containerNamed:  ''UNITRADE''
   ifNone: [ SstWSContainer createContainerNamed: ''UNITRADE'' ].
aContainer deploy: ''https://bue-07-dbs:3511/wsSonic?wsdl''.'
   result=nil
   failed=false
   definedNew=false
   newTextArray=nil
EmSystemConfiguration>>#showBusyCursorWhile:
   self=an EmSystemConfiguration
   aBlock=[] in StsWorkspace>>#evaluateSelectionIn:ifFail:
   shell=CwTopLevelShell(Workspace)
   window=nil
StsWorkspace(EtWindow)>>#execShortOperation:
   self=a StsWorkspace
   aBlock=[] in StsWorkspace>>#evaluateSelectionIn:ifFail:
StsWorkspace>>#evaluateSelectionIn:ifFail:
   self=a StsWorkspace
   aWidget=CwText(text)
   failBlock=[]
   text='   |aContainer  service |

aContainer := SstWSContainer containerNamed:  ''UNITRADE''
   ifNone: [ SstWSContainer createContainerNamed: ''UNITRADE'' ].
aContainer deploy: ''https://bue-07-dbs:3511/wsSonic?wsdl''.'
   result=nil
   failed=false
   definedNew=false
   newTextArray=nil
[] in StsWorkspace(EtWindow)>>#menuEditExecute
   self=a StsWorkspace
   widget=CwText(text)
EmSystemConfiguration>>#showBusyCursorWhile:
   self=an EmSystemConfiguration
   aBlock=[] in EtWindow>>#menuEditExecute
   shell=CwTopLevelShell(Workspace)
   window=a CgWindow
StsWorkspace(EtWindow)>>#execShortOperation:
   self=a StsWorkspace
   aBlock=[] in EtWindow>>#menuEditExecute
StsWorkspace(EtWindow)>>#menuEditExecute
   self=a StsWorkspace
   widget=CwText(text)
CwMenuPushButton>>#dispatchTo:
   self=a CwMenuPushButton
   receiver=a StsWorkspace
   selectorOrDirectedMessage=#menuEditExecute
CwMenu>>#simpleCallback:clientData:callData:
   self=a CwMenu
   w=CwPushButton(button_6)
   index=6
   callData=CwAnyCallbackData(
    reason -> 10
)
CwCallbackRec>>#callWith:callData:
   self=a CwCallbackRec
   aWidget=CwPushButton(button_6)
   callData=CwAnyCallbackData(
    reason -> 10
)
CwPushButton(CwBasicWidget)>>#callCallbackList:callData:
   self=CwPushButton(button_6)
   aCallbackList=OrderedCollection(a CwCallbackRec )
   callData=CwAnyCallbackData(
    reason -> 10
)
   callbacks=nil
   size=1
   rec1=nil
   rec2=nil
   rec3=nil
[] in CwRowColumn>>#simple:clientData:callData:
   self=CwRowColumn(~Edit)
   aRowColumn=CwRowColumn(~Edit)
   clientData=nil
   callData=CwRowColumnCallbackData(
    reason -> 10
    widget -> CwPushButton(button_6)
    data -> nil
    callbackData -> CwAnyCallbackData(
    reason -> 10
)
)
   data=CwAnyCallbackData(
    reason -> 10
)
   index=6
   list=OrderedCollection(a CwCallbackRec )
   child=CwPushButton(button_6)
OrderedCollection>>#do:
   self=OrderedCollection(CwPushButton(button_0) CwSeparator(button_1) CwPushButton(button_1) CwPushButton(button_2) CwSeparator(button_3) CwPushButton(button_3) CwPushButton(button_4) CwPushButton(button_5) CwSeparator(button_6) CwPushButton(button_6) CwPushButton(button_7) CwPushButton(button_8) CwPushButton(button_9) CwPushButton(button_10) CwSeparator(button_11) CwPushButton(button_11) CwPushButton(button_12) CwCascadeButton(button_13) CwPushButton(button_14) CwSeparator(button_15) CwCascadeButton(button_15) CwPushButton(button_16) CwPushButton(button_17) CwSeparator(button_18) CwPushButton(button_18) )
   aBlock=[] in CwRowColumn>>#simple:clientData:callData:
CwRowColumn>>#simple:clientData:callData:
   self=CwRowColumn(~Edit)
   aRowColumn=CwRowColumn(~Edit)
   clientData=nil
   callData=CwRowColumnCallbackData(
    reason -> 10
    widget -> CwPushButton(button_6)
    data -> nil
    callbackData -> CwAnyCallbackData(
    reason -> 10
)
)
   data=CwAnyCallbackData(
    reason -> 10
)
   index=6
   list=OrderedCollection(a CwCallbackRec )
CwCallbackRec>>#callWith:callData:
   self=a CwCallbackRec
   aWidget=CwRowColumn(~Edit)
   callData=CwRowColumnCallbackData(
    reason -> 10
    widget -> CwPushButton(button_6)
    data -> nil
    callbackData -> CwAnyCallbackData(
    reason -> 10
)
)
CwRowColumn(CwBasicWidget)>>#callCallbackList:callData:
   self=CwRowColumn(~Edit)
   aCallbackList=OrderedCollection(a CwCallbackRec )
   callData=CwRowColumnCallbackData(
    reason -> 10
    widget -> CwPushButton(button_6)
    data -> nil
    callbackData -> CwAnyCallbackData(
    reason -> 10
)
)
   callbacks=nil
   size=1
   rec1=nil
   rec2=nil
   rec3=nil
CwRowColumn>>#entry:clientData:callData:
   self=CwRowColumn(~Edit)
   aWidget=CwPushButton(button_6)
   callbackList=nil
   callData=CwAnyCallbackData(
    reason -> 10
)
   entryCallData=CwRowColumnCallbackData(
    reason -> 10
    widget -> CwPushButton(button_6)
    data -> nil
    callbackData -> CwAnyCallbackData(
    reason -> 10
)
)
CwPushButton>>#callActivateCallback:
   self=CwPushButton(button_6)
   anEvent=an OSEvent
OSMenuItem(OSWidget)>>#callHandlers:with:
   self=OSMenuItem(&Execute)
   handlers=#callActivateCallback:
   data=an OSEvent
DirectedMessage>>#send
   self=DirectedMessage (OSMenuItem(&Execute), #callHandlers:with:, (#callActivateCallback: an OSEvent))
OSEventManager class>>#runDeferredMessages
   self=OSEventManager
   state=true
   message=DirectedMessage (OSMenuItem(&Execute), #callHandlers:with:, (#callActivateCallback: an OSEvent))
OSWidget class>>#readAndDispatch
   self=OSWidget
   state=true
   gotEvent=true
CwAppContext>>#readAndDispatch
   self=a CwAppContext
AbtWindowSystemStartUp class(EsWindowSystemStartUp class)>>#messageLoop
   self=AbtWindowSystemStartUp
   lastEventTime=291533703
   appContext=a CwAppContext
[] in <optimized block>(UIProcess class)>>#forkUserInterface
[] in UIProcess(Process)>>#executeBlock:withArguments:
   self=UIProcess:(06/11/2008 18:03:46){suspended,3}
   aBlock=[] in UIProcess class>>#forkUserInterface
   args=()
UIProcess(Process)>>#executeBlock:withArguments:
   self=UIProcess:(06/11/2008 18:03:46){suspended,3}
   aBlock=[] in UIProcess class>>#forkUserInterface
   args=()
UIProcess(Process)>>#newProcessOn:stackSize:withArguments:named:
   self=UIProcess:(06/11/2008 18:03:46){suspended,3}
   aBlock=[] in UIProcess class>>#forkUserInterface
   stackSize=1024
   args=()
   procName='(06/11/2008 18:03:46)'
==============<STACK TRACE ENDS>=============


Thanks again,
Nicolás
nchillo
 
Posts: 9
Joined: Mon Nov 03, 2008 4:37 am

Re: Web Service parsing Policy tag

Postby Diane Engles » Mon Nov 10, 2008 3:57 pm

Nicolas,
Thanks for your information. I have been able to reproduce your problem. The wsdl deployment processing in VA Smalltalk does not currently support deployment of the Policy tag within the definitions section of the wsdl.

I am looking into the simplest way to make it possible. It is not trivial, but I'll post in a few days with a strategy that will let you deploy and invoke this web service with (I hope) not too much work on your part.

Regards,

Diane
Instantiations Smalltalk Support
diane@instantiations.com
Diane Engles
Moderator
 
Posts: 66
Joined: Mon Oct 16, 2006 2:40 pm

Re: Web Service parsing Policy tag

Postby nchillo » Tue Nov 11, 2008 11:07 am

Diane,
Thanks again for the answer. I really look forward to hearing again from you ;-).
Do you have any idea if WS-Security will be supported in future VA Smalltalk implementations? I 've read the VA Smalltalk 8.0 Preview and found the "Web Service Enhancements" topic but couldn´t find any reference to Security items. If it will be supported, do you have any idea when it would be available?

Thanks.
Nicolás
nchillo
 
Posts: 9
Joined: Mon Nov 03, 2008 4:37 am

Re: Web Service parsing Policy tag

Postby tc » Wed Nov 12, 2008 7:48 am

Hello,

http://www2.instantiations.com/VAST/Docs/hd/howdoiWS1.htm
How can I configure client services to pass WS-Security information?
The schema (http://schemas.xmlsoap.org/ws/2002/07/secext/) must be managed by the serializationManager of the Web services container. This is accomplished by modifying the client deployment descriptor to include the required schema.

<schemaUrls>
<schemaUrl>http://schemas.xmlsoap.org/ws/2002/07/secext/</schemaUrl>
</schemaUrls>

Authorization credentials can be specified in the SstWSService that is being invoked causing those credentials to be passed automatically as part of the message. The SstWSService contains accessors for getting and setting HTTP authorization credentials (#sstAuthCredential:) as well as WS-Security username tokens (#sstUsernameToken:). See the sample directory /samples/sstws/ws_security/Readme.txt for additional information and examples.


--tc
tc
Moderator
 
Posts: 304
Joined: Tue Oct 17, 2006 7:40 am
Location: Raleigh, NC

Re: Web Service parsing Policy tag

Postby nchillo » Fri Nov 14, 2008 11:22 am

Somebody knows how to define a wsdl with WS-Security but without using WS-Policy?

I need to deploy a wsdl that requieres the security header but i have no idea how to modify my wsdl to avoid trying to deploy de Policy tag (because parcing the policy tag raise an exception).

Thanks,
Nicolas
nchillo
 
Posts: 9
Joined: Mon Nov 03, 2008 4:37 am


Return to VA Smalltalk 7.0, 7.5 & 8.0

Who is online

Users browsing this forum: Yahoo [Bot] and 1 guest