users@jax-rpc.java.net

Re: exception handling

From: Doug Kohlert <Doug.Kohlert_at_Sun.COM>
Date: Thu, 19 May 2005 09:03:48 -0700

Ian,
OK, I understand now. You are not passing the -keep option to wsdeploy,
right? The the -s option should work on wscompile for specifying the directory to
place the source files in. They will still be in there respective
packages but you can have a different output directory for the sources
than the compiled classes.

Ian Jones wrote:

> Hi Doug,
>
> Apologies for the confusion. What I'm trying to achieve is all server
> side generated source files to be in a different package. So all the
> source files that are generated as a result of my running this command:
>
> C:\jwsdp-1.4\jaxrpc\bin\wscompile.bat -gen:server
> com/piper/trilogiview/control/datamanager/wsdl-gen-config.xml -model
> WEB-INF/DataManager.gz -classpath WEB-INF/classes -nd WEB-INF -keep -d
> WEB-INF/classes -s .
>
> and this is run from:
>
> D:\eclipse\workspace\trilogiview
>
> which contains all our own source code, i.e. com.piper. ... etc etc
>
> All the source files generated by this command go into the same
> directory as where the Impl.java and IF.java files are located, i.e. in
> the package:
>
> com.piper.trilogiview.control.datamanager
>
> but I would like to be able to generate them to here:
>
> com.piper.trilogiview.control.datamanager.jaxrpc
>
> Is it possible to do this?
>
> Many thanks,
>
> Ian.
>
> -----Original Message-----
> From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
> Sent: 19 May 2005 16:20
> To: users_at_jax-rpc.dev.java.net
> Subject: Re: exception handling
>
> Ian,
> Sorry I am a little confused. Exactly what generated files do you want
> to be in a different package. Ties, serializes, stubs, service classes
> source files, class files? Also, just be clear you are only concerned
> with
> the server side artifacts, right? That would eleminate stubs an service
> classes.
>
> Ian Jones wrote:
>
>
>>Hi Doug,
>>
>>Thanks for that, as usual. Just so we're clear - is there a reason
>
> why
>
>>you need the config.xml for generating the client stubs? Only the
>>problem we're getting is for the generation of server ties. But,
>>anyway, here's the information you asked for:
>>
>>WSDL:
>>
>><definitions name="DataManager"
>>targetNamespace="http://www.trilogi.co.uk/datamanager/target"
>>xmlns:tns="http://www.trilogi.co.uk/datamanager/target"
>>xmlns="http://schemas.xmlsoap.org/wsdl/"
>>xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>xmlns:ns2="http://www.trilogi.co.uk/datamanager"
>>xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
>> <types>
>> <schema targetNamespace="http://www.trilogi.co.uk/datamanager"
>>xmlns:tns="http://www.trilogi.co.uk/datamanager"
>>xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
>>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>xmlns="http://www.w3.org/2001/XMLSchema">
>> <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
>> <complexType name="DataManagerConnectionDetails">
>> <sequence>
>> <element name="connectString" type="string"/>
>> <element name="connectionName" type="string"/>
>> <element name="databaseName" type="string"/>
>> <element name="databaseType" type="tns:DatabaseType"/>
>> <element name="password" type="string"/>
>> <element name="serverLocation" type="string"/>
>> <element name="serverPort" type="int"/>
>> <element name="userName"
>>type="string"/></sequence></complexType>
>> <complexType name="DatabaseType">
>> <sequence>
>> <element name="dbProductName" type="string"/>
>> <element name="schemaVersion"
>>type="double"/></sequence></complexType>
>> <complexType name="SessionNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="Group">
>> <sequence>
>> <element name="active" type="boolean"/>
>> <element name="datasets" type="tns:ArrayOfGroupDataset"/>
>> <element name="defaultGroup" type="boolean"/>
>> <element name="name" type="string"/>
>> <element name="order" type="int"/></sequence></complexType>
>> <complexType name="ArrayOfGroupDataset">
>> <complexContent>
>> <restriction base="soap11-enc:Array">
>> <attribute ref="soap11-enc:arrayType"
>>
>
> wsdl:arrayType="tns:GroupDataset[]"/></restriction></complexContent></co
>
>>mplexType>
>> <complexType name="GroupDataset">
>> <sequence>
>> <element name="active" type="boolean"/>
>> <element name="datasetName" type="string"/>
>> <element name="primary"
>>type="boolean"/></sequence></complexType>
>> <complexType name="InterimAmendmentFileNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="DatasetFiles">
>> <sequence>
>> <element name="datasetFilePath" type="string"/>
>> <element name="firebirdFilePath" type="string"/>
>> <element name="packageFilePaths"
>>type="tns:ArrayOfstring"/></sequence></complexType>
>> <complexType name="ArrayOfstring">
>> <complexContent>
>> <restriction base="soap11-enc:Array">
>> <attribute ref="soap11-enc:arrayType"
>>
>
> wsdl:arrayType="string[]"/></restriction></complexContent></complexType>
>
>> <complexType name="DatasetFileNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="GroupFileNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="DatabaseCreationException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="ArrayOfDataManagerConnectionDetails">
>> <complexContent>
>> <restriction base="soap11-enc:Array">
>> <attribute ref="soap11-enc:arrayType"
>>
>
> wsdl:arrayType="tns:DataManagerConnectionDetails[]"/></restriction></com
>
>>plexContent></complexType>
>> <complexType name="ArrayOfDataset">
>> <complexContent>
>> <restriction base="soap11-enc:Array">
>> <attribute ref="soap11-enc:arrayType"
>>
>
> wsdl:arrayType="tns:Dataset[]"/></restriction></complexContent></complex
>
>>Type>
>> <complexType name="Dataset">
>> <sequence>
>> <element name="databaseType" type="tns:DatabaseType"/>
>> <element name="name"
>
> type="string"/></sequence></complexType>
>
>> <complexType name="ArrayOfGroup">
>> <complexContent>
>> <restriction base="soap11-enc:Array">
>> <attribute ref="soap11-enc:arrayType"
>>
>
> wsdl:arrayType="tns:Group[]"/></restriction></complexContent></complexTy
>
>>pe>
>> <complexType name="DataManagerProgressMessage">
>> <sequence>
>> <element name="message" type="string"/>
>> <element name="percentageComplete"
>>type="int"/></sequence></complexType>
>> <complexType name="DatasetNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="InvalidPasswordException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="SessionInProgressException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType>
>> <complexType name="GroupNotFoundException">
>> <sequence>
>> <element name="message"
>>type="string"/></sequence></complexType></schema></types>
>> <message name="DataManagerIF_addConnection">
>> <part name="String_1" type="xsd:string"/>
>> <part name="DataManagerConnectionDetails_2"
>>type="ns2:DataManagerConnectionDetails"/></message>
>> <message name="DataManagerIF_addConnectionResponse"/>
>> <message name="SessionNotFoundException">
>> <part name="SessionNotFoundException"
>>type="ns2:SessionNotFoundException"/></message>
>> <message name="DataManagerIF_addGroup">
>> <part name="String_1" type="xsd:string"/>
>> <part name="Group_2" type="ns2:Group"/></message>
>> <message name="DataManagerIF_addGroupResponse"/>
>> <message name="DataManagerIF_applyChanges">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_applyChangesResponse"/>
>> <message name="DataManagerIF_applyInterimAmendment">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/></message>
>> <message name="DataManagerIF_applyInterimAmendmentResponse"/>
>> <message name="InterimAmendmentFileNotFoundException">
>> <part name="InterimAmendmentFileNotFoundException"
>>type="ns2:InterimAmendmentFileNotFoundException"/></message>
>> <message name="DataManagerIF_copyDatasetFiles">
>> <part name="String_1" type="xsd:string"/>
>> <part name="DatasetFiles_2" type="ns2:DatasetFiles"/></message>
>> <message name="DataManagerIF_copyDatasetFilesResponse"/>
>> <message name="DatasetFileNotFoundException">
>> <part name="DatasetFileNotFoundException"
>>type="ns2:DatasetFileNotFoundException"/></message>
>> <message name="DataManagerIF_copyGroupFile">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/></message>
>> <message name="DataManagerIF_copyGroupFileResponse"/>
>> <message name="GroupFileNotFoundException">
>> <part name="GroupFileNotFoundException"
>>type="ns2:GroupFileNotFoundException"/></message>
>> <message name="DataManagerIF_copyInterimAmendmentFile">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/></message>
>> <message name="DataManagerIF_copyInterimAmendmentFileResponse"/>
>> <message name="DataManagerIF_createDatabase">
>> <part name="String_1" type="xsd:string"/>
>> <part name="DataManagerConnectionDetails_2"
>>type="ns2:DataManagerConnectionDetails"/></message>
>> <message name="DataManagerIF_createDatabaseResponse"/>
>> <message name="DatabaseCreationException">
>> <part name="DatabaseCreationException"
>>type="ns2:DatabaseCreationException"/></message>
>> <message name="DataManagerIF_getConnections">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_getConnectionsResponse">
>> <part name="result"
>>type="ns2:ArrayOfDataManagerConnectionDetails"/></message>
>> <message name="DataManagerIF_getDatasets">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_getDatasetsResponse">
>> <part name="result" type="ns2:ArrayOfDataset"/></message>
>> <message name="DataManagerIF_getGroups">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_getGroupsResponse">
>> <part name="result" type="ns2:ArrayOfGroup"/></message>
>> <message name="DataManagerIF_getProgress">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_getProgressResponse">
>> <part name="result"
>>type="ns2:DataManagerProgressMessage"/></message>
>> <message name="DataManagerIF_loadIntoOracle">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/>
>> <part name="DataManagerConnectionDetails_3"
>>type="ns2:DataManagerConnectionDetails"/></message>
>> <message name="DataManagerIF_loadIntoOracleResponse"/>
>> <message name="DatasetNotFoundException">
>> <part name="DatasetNotFoundException"
>>type="ns2:DatasetNotFoundException"/></message>
>> <message name="DataManagerIF_login">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_loginResponse">
>> <part name="result" type="xsd:string"/></message>
>> <message name="InvalidPasswordException">
>> <part name="InvalidPasswordException"
>>type="ns2:InvalidPasswordException"/></message>
>> <message name="SessionInProgressException">
>> <part name="SessionInProgressException"
>>type="ns2:SessionInProgressException"/></message>
>> <message name="DataManagerIF_logout">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_logoutResponse"/>
>> <message name="DataManagerIF_removeDataset">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/></message>
>> <message name="DataManagerIF_removeDatasetResponse"/>
>> <message name="DataManagerIF_removeGroup">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/></message>
>> <message name="DataManagerIF_removeGroupResponse"/>
>> <message name="GroupNotFoundException">
>> <part name="GroupNotFoundException"
>>type="ns2:GroupNotFoundException"/></message>
>> <message name="DataManagerIF_setDatasetOrder">
>> <part name="String_1" type="xsd:string"/>
>> <part name="String_2" type="xsd:string"/>
>> <part name="arrayOfString_3" type="ns2:ArrayOfstring"/></message>
>> <message name="DataManagerIF_setDatasetOrderResponse"/>
>> <message name="DataManagerIF_setGroupOrder">
>> <part name="String_1" type="xsd:string"/>
>> <part name="arrayOfString_2" type="ns2:ArrayOfstring"/></message>
>> <message name="DataManagerIF_setGroupOrderResponse"/>
>> <message name="DataManagerIF_stopActivity">
>> <part name="String_1" type="xsd:string"/></message>
>> <message name="DataManagerIF_stopActivityResponse"/>
>> <portType name="DataManagerIF">
>> <operation name="addConnection" parameterOrder="String_1
>>DataManagerConnectionDetails_2">
>> <input message="tns:DataManagerIF_addConnection"/>
>> <output message="tns:DataManagerIF_addConnectionResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="addGroup" parameterOrder="String_1 Group_2">
>> <input message="tns:DataManagerIF_addGroup"/>
>> <output message="tns:DataManagerIF_addGroupResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="applyChanges" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_applyChanges"/>
>> <output message="tns:DataManagerIF_applyChangesResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="applyInterimAmendment" parameterOrder="String_1
>>String_2">
>> <input message="tns:DataManagerIF_applyInterimAmendment"/>
>> <output
>>message="tns:DataManagerIF_applyInterimAmendmentResponse"/>
>> <fault name="InterimAmendmentFileNotFoundException"
>>message="tns:InterimAmendmentFileNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="copyDatasetFiles" parameterOrder="String_1
>>DatasetFiles_2">
>> <input message="tns:DataManagerIF_copyDatasetFiles"/>
>> <output message="tns:DataManagerIF_copyDatasetFilesResponse"/>
>> <fault name="DatasetFileNotFoundException"
>>message="tns:DatasetFileNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="copyGroupFile" parameterOrder="String_1
>
> String_2">
>
>> <input message="tns:DataManagerIF_copyGroupFile"/>
>> <output message="tns:DataManagerIF_copyGroupFileResponse"/>
>> <fault name="GroupFileNotFoundException"
>>message="tns:GroupFileNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="copyInterimAmendmentFile"
>
> parameterOrder="String_1
>
>>String_2">
>> <input message="tns:DataManagerIF_copyInterimAmendmentFile"/>
>> <output
>>message="tns:DataManagerIF_copyInterimAmendmentFileResponse"/>
>> <fault name="InterimAmendmentFileNotFoundException"
>>message="tns:InterimAmendmentFileNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="createDatabase" parameterOrder="String_1
>>DataManagerConnectionDetails_2">
>> <input message="tns:DataManagerIF_createDatabase"/>
>> <output message="tns:DataManagerIF_createDatabaseResponse"/>
>> <fault name="DatabaseCreationException"
>>message="tns:DatabaseCreationException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="getConnections" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_getConnections"/>
>> <output message="tns:DataManagerIF_getConnectionsResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="getDatasets" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_getDatasets"/>
>> <output message="tns:DataManagerIF_getDatasetsResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="getGroups" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_getGroups"/>
>> <output message="tns:DataManagerIF_getGroupsResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="getProgress" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_getProgress"/>
>> <output message="tns:DataManagerIF_getProgressResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="loadIntoOracle" parameterOrder="String_1 String_2
>>DataManagerConnectionDetails_3">
>> <input message="tns:DataManagerIF_loadIntoOracle"/>
>> <output message="tns:DataManagerIF_loadIntoOracleResponse"/>
>> <fault name="DatasetNotFoundException"
>>message="tns:DatasetNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="login" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_login"/>
>> <output message="tns:DataManagerIF_loginResponse"/>
>> <fault name="InvalidPasswordException"
>>message="tns:InvalidPasswordException"/>
>> <fault name="SessionInProgressException"
>>message="tns:SessionInProgressException"/></operation>
>> <operation name="logout" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_logout"/>
>> <output message="tns:DataManagerIF_logoutResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="removeDataset" parameterOrder="String_1
>
> String_2">
>
>> <input message="tns:DataManagerIF_removeDataset"/>
>> <output message="tns:DataManagerIF_removeDatasetResponse"/>
>> <fault name="DatasetNotFoundException"
>>message="tns:DatasetNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="removeGroup" parameterOrder="String_1 String_2">
>> <input message="tns:DataManagerIF_removeGroup"/>
>> <output message="tns:DataManagerIF_removeGroupResponse"/>
>> <fault name="GroupNotFoundException"
>>message="tns:GroupNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="setDatasetOrder" parameterOrder="String_1
>
> String_2
>
>>arrayOfString_3">
>> <input message="tns:DataManagerIF_setDatasetOrder"/>
>> <output message="tns:DataManagerIF_setDatasetOrderResponse"/>
>> <fault name="DatasetNotFoundException"
>>message="tns:DatasetNotFoundException"/>
>> <fault name="GroupNotFoundException"
>>message="tns:GroupNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="setGroupOrder" parameterOrder="String_1
>>arrayOfString_2">
>> <input message="tns:DataManagerIF_setGroupOrder"/>
>> <output message="tns:DataManagerIF_setGroupOrderResponse"/>
>> <fault name="GroupNotFoundException"
>>message="tns:GroupNotFoundException"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation>
>> <operation name="stopActivity" parameterOrder="String_1">
>> <input message="tns:DataManagerIF_stopActivity"/>
>> <output message="tns:DataManagerIF_stopActivityResponse"/>
>> <fault name="SessionNotFoundException"
>>message="tns:SessionNotFoundException"/></operation></portType>
>> <binding name="DataManagerIFBinding" type="tns:DataManagerIF">
>> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>>style="rpc"/>
>> <operation name="addConnection">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="addGroup">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="applyChanges">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="applyInterimAmendment">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="InterimAmendmentFileNotFoundException">
>> <soap:fault name="InterimAmendmentFileNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="copyDatasetFiles">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="DatasetFileNotFoundException">
>> <soap:fault name="DatasetFileNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="copyGroupFile">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="GroupFileNotFoundException">
>> <soap:fault name="GroupFileNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="copyInterimAmendmentFile">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="InterimAmendmentFileNotFoundException">
>> <soap:fault name="InterimAmendmentFileNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="createDatabase">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="DatabaseCreationException">
>> <soap:fault name="DatabaseCreationException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="getConnections">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="getDatasets">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="getGroups">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="getProgress">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="loadIntoOracle">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="DatasetNotFoundException">
>> <soap:fault name="DatasetNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="login">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="InvalidPasswordException">
>> <soap:fault name="InvalidPasswordException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionInProgressException">
>> <soap:fault name="SessionInProgressException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="logout">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="removeDataset">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="DatasetNotFoundException">
>> <soap:fault name="DatasetNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="removeGroup">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="GroupNotFoundException">
>> <soap:fault name="GroupNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="setDatasetOrder">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="DatasetNotFoundException">
>> <soap:fault name="DatasetNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="GroupNotFoundException">
>> <soap:fault name="GroupNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="setGroupOrder">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="GroupNotFoundException">
>> <soap:fault name="GroupNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></fault>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion>
>> <operation name="stopActivity">
>> <soap:operation soapAction=""/>
>> <input>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></input>
>> <output>
>> <soap:body
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
>>namespace="http://www.trilogi.co.uk/datamanager/target"/></output>
>> <fault name="SessionNotFoundException">
>> <soap:fault name="SessionNotFoundException"
>>encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
> use="encoded"
>
> namespace="http://www.trilogi.co.uk/datamanager/target"/></fault></opera
>
>>tion></binding>
>> <service name="DataManager">
>> <port name="DataManagerIFPort" binding="tns:DataManagerIFBinding">
>> <soap:address
>>location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>
>>
>>
>>
>>********* client-stubs.xml:
>><configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
>> <wsdl
>
> location="http://localhost:1332/trilogiView/dataManagerRPC?WSDL"
>
> packageName="com.piper.trilogiview.control.datamanager.testclient.jaxrpc
>
>>"/>
>></configuration>
>>
>>I hope this helps,
>>
>>Ian.
>>
>>-----Original Message-----
>>From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
>>Sent: 18 May 2005 17:40
>>To: users_at_jax-rpc.dev.java.net
>>Subject: Re: exception handling
>>
>>Ian,
>>Can you send me the WSDL that was generated and the config.xml file
>
> you
>
>>use for the client?
>>
>>Ian Jones wrote:
>>
>>
>>
>>>Hi Doug,
>>>
>>>I've tried your suggestion of using namespaceMapping but, with the way
>>
>>I
>>
>>
>>>attempted to set it up, it seemed to make no difference. Here is my
>>>wsdl-gen-config.xml using a <namespaceMapping>:
>>>
>>><configuration
>>> xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
>>> <service
>>> name="DataManager"
>>> targetNamespace="http://www.trilogi.co.uk/datamanager/target"
>>> typeNamespace="http://www.trilogi.co.uk/datamanager"
>>> packageName="com.piper.trilogiview.control.datamanager">
>>> <interface
>>>name="com.piper.trilogiview.control.datamanager.DataManagerIF"/>
>>> <typeMappingRegistry>
>>> <additionalTypes>
>>> <class
>>>name="com.piper.trilogiview.control.datamanager.DatabaseType"/>
>>> <class
>>>name="com.piper.trilogiview.control.datamanager.GroupDataset"/>
>>> </additionalTypes>
>>> </typeMappingRegistry>
>>> <namespaceMappingRegistry>
>>> <namespaceMapping
>>>namespace="http://www.trilogi.co.uk/datamanager"
>>>packageName="com.piper.trilogiview.control.datamanager"/>
>>> <namespaceMapping
>>>namespace="http://www.trilogi.co.uk/datamanager/target"
>>>packageName="com.piper.trilogiview.control.datamanager.jaxrpc"/>
>>> </namespaceMappingRegistry>
>>>
>>> </service>
>>></configuration>
>>>
>>>To be honest, from the example in the white paper, I couldn't really
>>
>>get
>>
>>
>>>my head around what needed to be done for my situation, so it's quite
>>>possible that what I've done with the above config file makes little
>>>sense!
>>>
>>>Also, as I mentioned in my previous mail, I have tried just changing
>>
>>the
>>
>>
>>>packageName attribute of the <service> element. The only affect this
>>>has on the generation is to put the
>>>DataManager_SerializerRegistry.java/class files into the specified
>>>package. I just wondered if this has any relevance or if, indeed,
>>
>>this
>>
>>
>>>is correct?
>>>
>>>If you could advise where I may be going wrong with all of this it
>>
>>will,
>>
>>
>>>once again, be greatly appreciated.
>>>
>>>Cheers,
>>>
>>>Ian.
>>>
>>>-----Original Message-----
>>>From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
>>>Sent: 17 May 2005 23:42
>>>To: users_at_jax-rpc.dev.java.net
>>>Subject: Re: exception handling
>>>
>>>Ian,
>>>Did you try to add a <namespaceMapping> entry in your config.xml.
>>>It will map Java packages to a namespace. Do this on the server.
>>>Then when creating the client, use a <namespaceMapping> again to map
>>>the namespaces to different packages. This might solve your problem.
>>>Please refer to 3.5.3 Adding namespace-to-package Mappings in
>>>https://jax-rpc.dev.java.net/whitepaper/1.1/index-part1.html for more
>>>information on namespace mappings.
>>>
>>>Ian Jones wrote:
>>>
>>>
>>>
>>>
>>>>Hi Doug,
>>>>
>>>>Yes that has worked! As you said, we were generating the WSDL from
>>>
>>>the
>>>
>>>
>>>
>>>>SEI and then generating the server artefacts from the WSDL. Now we
>
> are
>
>>>>using just one wscompile command to generate both of these things as
>>>>follows:
>>>>
>>>>C:\jwsdp-1.4\jaxrpc\bin\wscompile.bat -gen:server
>>>>com/piper/trilogiview/control/datamanager/wsdl-gen-config.xml -model
>>>>WEB-INF/DataManager.gz -classpath WEB-INF/classes -nd WEB-INF -keep
>
> -d
>
>>>>WEB-INF/classes -s .
>>>>
>>>>When used like this, and the client stubs have also been generated,
>>>
>>>the
>>>
>>>
>>>
>>>>exceptions get picked up by the client as expected.
>>>>
>>>>This also seems to solve the problem I mentioned of having to
>
> generate
>
>>>>the server ties into a temporary area. With the original way,
>>>
>>>wscompile
>>>
>>>
>>>
>>>>generated class files for all aspects of the SEI including the types
>>>
>>>and
>>>
>>>
>>>
>>>>exception classes. With the new way these are no longer generated.
>>>
>>>So,
>>>
>>>
>>>
>>>>with the above command the class files are just generated into our
>>>>WEB-INF/classes directory. However, it would also be preferable to
>>>
>>>keep
>>>
>>>
>>>
>>>>the generated java files which we are doing by using the -keep and -s
>>>>options, as above. But this generates them all in the directory
>
> where
>
>>>>the SEI is defined, i.e. with the IF and Impl classes etc, and this
>>>>becomes quite messy due to the number of classes being generated. In
>>>
>>>an
>>>
>>>
>>>
>>>>attempt to achieve this I amended the packageName attribute in our
>>>>wsdl-gen-config.xml, but this made little difference. So, is there
>
> any
>
>>>>way of specifying a different package for these to be generated into?
>>>>Or do they have to be in the same package? And, if so, is it still
>>>
>>>best
>>>
>>>
>>>
>>>>to jar up the server artefacts as we were doing before or to put them
>>>
>>>in
>>>
>>>
>>>
>>>>a WAR file and use wsdeploy?
>>>>
>>>>Many thanks for your help in solving this problem. Any help on the
>>>>final few queries I have there will be greatly appreciated.
>>>>
>>>>Ian.
>>>>
>>>>-----Original Message-----
>>>>From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
>>>>Sent: 16 May 2005 19:19
>>>>To: users_at_jax-rpc.dev.java.net
>>>>Subject: Re: exception handling
>>>>
>>>>Ian,
>>>>I think the problem is that you are trying to create server side
>>>>artifacts
>>>>by first, processing the SEI to create a WSDL and then using the WSDL
>>>
>>>to
>>>
>>>
>>>
>>>>do
>>>>the server side. I suggest you create the server side artifacts
>>>
>>>direcly
>>>
>>>
>>>
>>>>from
>>>>the SEI. Please refer to scenario 1 of
>>>>https://jax-rpc.dev.java.net/whitepaper/1.1/index-part2.html
>>>>on how to do this.
>>>>
>>>>Let me know if this works for you.
>>>>
>>>>Ian Jones wrote:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>Hi Doug,
>>>>>
>>>>>Once again, many thanks for you help. Here is the information you
>>>>
>>>>asked
>>>>
>>>>
>>>>
>>>>
>>>>>for (By the way, this is all done using JWSDP 1.4):
>>>>>
>>>>>***** WSDL Generation:
>>>>>Contents of wsdl-gen-config.xml:
>>>>><configuration
>>>>>xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
>>>>><service
>>>>> name="DataManager"
>>>>> targetNamespace="http://www.trilogi.co.uk/datamanager"
>>>>> typeNamespace="http://www.trilogi.co.uk/datamanager"
>>>>> packageName="com.piper.trilogiview.datamanager">
>>>>> <interface
>>>>>name="com.piper.trilogiview.datamanager.DataManagerIF"/>
>>>>> <typeMappingRegistry>
>>>>> <additionalTypes>
>>>>> <class
>>>>>name="com.piper.trilogiview.datamanager.DatabaseType"/>
>>>>> <class
>>>>>name="com.piper.trilogiview.datamanager.GroupDataset"/>
>>>>> </additionalTypes>
>>>>> </typeMappingRegistry>
>>>>></service>
>>>>></configuration>
>>>>>
>>>>>wscompile command is run from D:\eclipse\workspace\trilogiView as
>>>>>follows:
>>>>>C:\jwsdp-1.4\jaxrpc\bin\wscompile.bat -define -g
>>>>>com/piper/trilogiview/datamanager/wsdl-gen-config.xml -model
>>>>>WEB-INF/DataManager.gz -classpath WEB-INF/classes -nd WEB-INF
>>>>>
>>>>>***** Generating server ties:
>>>>>Contents of tie-gen-config.xml:
>>>>><configuration
>>>>> xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
>>>>> <wsdl
>>>>>location="D:\eclipse\workspace\trilogiView\WEB-INF\DataManager.wsdl"
>>>>>packageName="com.piper.trilogiview.datamanager" />
>>>>></configuration>
>>>>>
>>>>>wscompile command is run in a temporary area, D:\temp, so that they
>>>>
>>>>can
>>>>
>>>>
>>>>
>>>>
>>>>>be built into a jar so that the generated class files don't conflict
>>>>>with the one defining the web service. To be honest, having to do
>>>>
>>>>this
>>>>
>>>>
>>>>
>>>>
>>>>>always feels like something we are doing incorrectly. This may also
>>>>>highlight another problem occurring with the exceptions being
>
> created
>
>>>>as
>>>>
>>>>
>>>>
>>>>
>>>>>the generated DataManagerIF.class throws exceptions such as
>>>>>InvalidPasswordException_Exception instead of the specified
>>>>>InvalidPasswordException. So, if the server ties aren't made into a
>>>>
>>>>jar
>>>>
>>>>
>>>>
>>>>
>>>>>file and the DataManagerImpl class is changed then many compilation
>>>>>errors then occur. Perhaps it is something around this area that is
>>>>>causing the problems I am getting? Anyway, here is how the command
>>
>>is
>>
>>
>>>>>run for this:
>>>>>
>>>>>C:\jwsdp-1.4\jaxrpc\bin\wscompile.bat -g -gen:server -f:searchschema
>>>>>
>>>>
>>>>
> D:\eclipse\workspace\trilogiView\com\piper\trilogiview\datamanager\tie-g
>
>>>>>en-config.xml
>>>>>
>>>>>***** Generating client stubs:
>>>>>Contents of client-stubs.xml:
>>>>><configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
>>>>><wsdl
>>>>
>>>>location="http://localhost:1332/trilogiView/dataManagerRPC?WSDL"
>>>>
>>>>
>>>>
>>>>
>>>>>packageName="com.piper.datamanagertest.jaxrpc"/>
>>>>></configuration>
>>>>>
>>>>>wscompile command is run from D:\eclipse\workspace\dataManagerTest
>
> as
>
>>>>>follows:
>>>>>C:\jwsdp-1.4\jaxrpc\bin\wscompile.bat -gen:client -keep
>>>>>com/piper/datamanagertest/jaxrpc/client-stubs.xml -f:searchschema
>>>>>
>>>>>As you can see, we're not using the -d option on any of the
>
> commands.
>
>>>>As
>>>>
>>>>
>>>>
>>>>
>>>>>for capturing the message on the wire, I'm not entirely sure what
>
> you
>
>>>>>mean. But if you still need this, if you could clarify slightly I
>>>>
>>>>will
>>>>
>>>>
>>>>
>>>>
>>>>>get you that as well.
>>>>>
>>>>>Many thanks,
>>>>>
>>>>>Ian.
>>>>>
>>>>>-----Original Message-----
>>>>>From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
>>>>>Sent: 11 May 2005 16:38
>>>>>To: users_at_jax-rpc.dev.java.net
>>>>>Subject: Re: exception handling
>>>>>
>>>>>Ian,
>>>>>Can you send the contents of tie-gen-config.xml, client-stubs.xml,
>>>>>wsdl-gen-config.xml.
>>>>>
>>>>>Also, are you using -d options on any of the commands?
>>>>>What directory are your invoking the commands from?
>>>>>If possible, can you capture the message on the wire and
>>>>>send it to me?
>>>>>
>>>>>
>>>>>Ian Jones wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Hi Doug,
>>>>>>
>>>>>>Thanks for that. However I have tried your suggestion and I still
>>>
>>>get
>>>
>>>
>>>
>>>>>>the same result. Here are a few more details about what I'm doing
>
> -
>
>>>>>any
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>more help you can give will be greatly appreciated:
>>>>>>
>>>>>>This is where I throw the exception in my implementation class:
>>>>>>
>>>>>>public String login(String password) throws RemoteException,
>>>>>>InvalidPasswordException {
>>>>>> Environment env = Environment.getInstance();
>>>>>> String dmPassword =
>>>>>>env.getMainConfig().getDataManagerPassword();
>>>>>> if (password.equals(dmPassword)) {
>>>>>> String sessionId = getSessionId();
>>>>>> return sessionId;
>>>>>> } else {
>>>>>> throw new InvalidPasswordException();
>>>>>> }
>>>>>>}
>>>>>>
>>>>>>And here is my latest version of the InvalidPasswordException
>
> class,
>
>>>>>>with your suggested changes:
>>>>>>
>>>>>>public class InvalidPasswordException extends Exception {
>>>>>>
>>>>>>public InvalidPasswordException() {
>>>>>> super("Invalid password");
>>>>>>}
>>>>>>
>>>>>>}
>>>>>>
>>>>>>When the exception gets thrown by the implementation class the
>>
>>server
>>
>>
>>>>>>generates the following stack trace (this is just the first few
>>>>
>>>>lines):
>>>>
>>>>
>>>>
>>>>
>>>>>>SEVERE: JAXRPC.TIE.01: caught exception while handling request:
>>>>>>com.piper.trilogiview.datamanager.exceptions.InvalidPasswordExcepti
>
> o
>
>>n
>>
>>
>>>:
>>>
>>>
>>>
>>>>>>Invalid password
>>>>>>com.piper.trilogiview.datamanager.exceptions.InvalidPasswordExcepti
>
> o
>
>>n
>>
>>
>>>:
>>>
>>>
>>>
>>>>>>Invalid password
>>>>>> at
>>>>>>com.piper.trilogiview.datamanager.DataManagerImpl.login(DataManager
>
> I
>
>>m
>>
>>
>>>p
>>>
>>>
>>>
>>>>l
>>>>
>>>>
>>>>
>>>>
>>>>>.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>java:53)
>>>>>> at
>>>>>>com.piper.trilogiview.datamanager.DataManagerIF_Tie.invoke_login(Da
>
> t
>
>>a
>>
>>
>>>M
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>n
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>agerIF_Tie.java:248)
>>>>>> at
>>>>>>com.piper.trilogiview.datamanager.DataManagerIF_Tie.processingHook(
>
> D
>
>>a
>>
>>
>>>t
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>M
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>anagerIF_Tie.java:1445)
>>>>>> at
>>>>>>com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.jav
>
> a
>
>>:
>>
>>
>>>2
>>>
>>>
>>>
>>>>2
>>>>
>>>>
>>>>
>>>>
>>>>>8
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>)
>>>>>> at
>>>>>>com.sun.xml.rpc.server.http.JAXRPCServletDelegate.doPost(JAXRPCServ
>
> l
>
>>e
>>
>>
>>>t
>>>
>>>
>>>
>>>>D
>>>>
>>>>
>>>>
>>>>
>>>>>e
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>legate.java:316)
>>>>>>
>>>>>>
>>>>>>
>>>>>>Meanwhile the stack trace of the exception caught on the client is
>>>>
>>>>this
>>>>
>>>>
>>>>
>>>>
>>>>>>(again, just the first few lines):
>>>>>>
>>>>>>
>>>>>>
>>>>>>java.rmi.ServerException: JAXRPC.TIE.04: Internal Server Error
>>>>>>(JAXRPC.TIE.01: caught exception while handling request:
>>>>>>com.piper.trilogiview.datamanager.exceptions.InvalidPasswordExcepti
>
> o
>
>>n
>>
>>
>>>:
>>>
>>>
>>>
>>>>>>Invalid password)
>>>>>> at
>>>>>>com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.
>
> j
>
>>a
>>
>>
>>>v
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>372)
>>>>>> at
>>>>>>com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:2
>
> 2
>
>>4
>>
>>
>>>)
>>>
>>>
>>>
>>>>>> at
>>>>>>com.piper.datamanagertest.jaxrpc.DataManagerIF_Stub.login(DataManag
>
> e
>
>>r
>>
>>
>>>I
>>>
>>>
>>>
>>>>F
>>>>
>>>>
>>>>
>>>>
>>>>>_
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Stub.java:188)
>>>>>> at
>>>>>>com.piper.datamanagertest.testclient.LoginTest.testInvalidLogin(Log
>
> i
>
>>n
>>
>>
>>>T
>>>
>>>
>>>
>>>>e
>>>>
>>>>
>>>>
>>>>
>>>>>s
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>t.java:71)
>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>> at
>>>>>>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImp
>
> l
>
>>.
>>
>>
>>>j
>>>
>>>
>>>
>>>>a
>>>>
>>>>
>>>>
>>>>
>>>>>v
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>a:39)
>>>>>> at
>>>>>>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcc
>
> e
>
>>s
>>
>>
>>>s
>>>
>>>
>>>
>>>>o
>>>>
>>>>
>>>>
>>>>
>>>>>r
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>Impl.java:25)
>>>>>>
>>>>>>
>>>>>>As you can see the client exception is a ServerException which
>
> seems
>
>>>>to
>>>>
>>>>
>>>>
>>>>
>>>>>>reference the InvalidPasswordException within it.
>>>>>>
>>>>>>I'm using wscompile to generate WSDL, server ties and client stubs
>>>>
>>>>from
>>>>
>>>>
>>>>
>>>>
>>>>>>the Java interface. Is there anything I need to add to any of the
>>>>>>config files for these to do with exceptions, as I haven't added
>>>>>>anything at the moment? Or is there a flag I need to specify on
>>>>>>wscompile? Here are the flags I'm using for wscompile at the
>>
>>moment:
>>
>>
>>>>>>For WSDL generation:
>>>>>>-define -g com/piper/datamanager/wsdl-gen-config.xml -model
>>>>>>WEB-INF/DataManager.gz -classpath WEB-INF/classes -nd WEB-INF
>>>>>>
>>>>>>For generating server ties:
>>>>>>-g -gen:server -f:searchschema
>>>>
>>>>com\piper\datamanager\tie-gen-config.xml
>>>>
>>>>
>>>>
>>>>
>>>>>>For generating client stubs:
>>>>>>-gen:client -keep com/piper/datamanagertest/jaxrpc/client-stubs.xml
>>>>>>-f:searchschema
>>>>>>
>>>>>>Again, many thanks for any further help with this,
>>>>>>
>>>>>>Ian.
>>>>>>
>>>>>>-----Original Message-----
>>>>>>From: Doug Kohlert [mailto:Doug.Kohlert_at_Sun.COM]
>>>>>>Sent: 10 May 2005 18:28
>>>>>>To: users_at_jax-rpc.dev.java.net
>>>>>>Subject: Re: exception handling
>>>>>>
>>>>>>Ian,
>>>>>>InvalidPasswordException_Exception is the proper name on the
>
> client.
>
>>>>>Try
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>modifying your
>>>>>>exception class on the server to be:
>>>>>>
>>>>>>public class InvalidPasswordException extends Exception {
>>>>>>
>>>>>>public InvalidPasswordException() {
>>>>>>
>>>>>>super("bad password");
>>>>>>
>>>>>>}
>>>>>>
>>>>>>
>>>>>>}
>>>>>>
>>>>>>and see if that works.
>>>>>>
>>>>>>Ian Jones wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>All,
>>>>>>>
>>>>>>>I'm attempting to throw a service-specific exception in my JAX-RPC
>>>>
>>>>web
>>>>
>>>>
>>>>
>>>>
>>>>>>
>>>>>>
>>>>>>>service. This exception is defined, simply, as follows:
>>>>>>>
>>>>>>>public class InvalidPasswordException extends Exception {
>>>>>>>
>>>>>>>public InvalidPasswordException() {
>>>>>>>
>>>>>>>}
>>>>>>>
>>>>>>>}
>>>>>>>
>>>>>>>and is thrown in the interface of my web service here:
>>>>>>>
>>>>>>>String login(String password) throws RemoteException,
>>>>>>>
>>>>>>>InvalidPasswordException;
>>>>>>>
>>>>>>>I then use wscompile to generate the WSDL, server ties and client
>>>>>>>stubs. However the client stub generated for the exception is
>>
>>called
>>
>>
>>>>>>>InvalidPasswordException_Exception and this is thrown by the login
>
>
>>>>>>>method's client stub. Is this what should happen?
>>>>>>>
>>>>>>>In my client I attempt to catch this
>>>>>>>InvalidPasswordException_Exception exception as follows:
>>>>>>>
>>>>>>>try {
>>>>>>>
>>>>>>>client.login("random");
>>>>>>>
>>>>>>>fail("Password was not invalid");
>>>>>>>
>>>>>>>} catch (InvalidPasswordException_Exception e) {
>>>>>>>
>>>>>>>return;
>>>>>>>
>>>>>>>} catch (ServerException e) {
>>>>>>>
>>>>>>>fail(e.getMessage());
>>>>>>>
>>>>>>>} catch (Exception e) {
>>>>>>>
>>>>>>>e.printStackTrace();
>>>>>>>
>>>>>>>fail("failed due to exception " + e.getMessage());
>>>>>>>
>>>>>>>}
>>>>>>>
>>>>>>>In this case the server correctly attempts to throw a new
>>>>>>>InvalidPasswordException, but the client catches a ServerException
>
>
>>>>>>>which mentions the InvalidPasswordException within it's message.
>
> Is
>
>>
>>>>>>>this also correct? Shouldn't I just be able to catch an
>>>>>>>InvalidPasswordException as specified by the service's interface?
>>>>>>>
>>>>>>>Many thanks for any help,
>>>>>>>
>>>>>>>Ian Jones
>>>>>>>
>>>>>>>Senior Analyst Developer
>>>>>>>
>>>>>>>Piper Group plc
>>>>>>>
>>>>>>>Email: ijones_at_piper-group.com
>>>>>>>
>>>>>>>Tel: + 44 (0) 1454 284900
>>>>>>>
>>>>>>>Fax: + 44 (0) 1454 284950
>>>>>>>
>>>>>>>www.piper-group.com <http://www.piper-group.com/>
>>>>>>>
>>>>>>>Information contained in this e-mail is intended for the use of
>
> the
>
>>
>>>>>>>addressee only, and is confidential and may be the subject of
>
> legal
>
>>
>>>>>>>professional privilege. Any dissemination, distribution, copying
>
> or
>
>>
>>>>>>>use of this communication without permission of the addressee is
>>>>>>>strictly prohibited. The views expressed in this communication may
>>>>
>>>>not
>>>>
>>>>
>>>>
>>>>
>>>>>>
>>>>>>
>>>>>>>necessarily be the views held by Piper Group plc.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>-------------------------------------------------------------------
>
> -
>
>>-
>>
>>
>>>>>>To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
>>>>>>For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>-------------------------------------------------------------------
>
> -
>
>>-
>>
>>
>>>>>>To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
>>>>>>For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>--------------------------------------------------------------------
>
> -
>
>>>>>To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
>>>>>For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>--------------------------------------------------------------------
>
> -
>
>>>>>To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
>>>>>For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net
>>>>>
>>>>
>>>>
>

-- 
Doug Kohlert
Java Software Division
Sun Microsystems, Inc.
phone: 503 345-9806