So much for testing in a polluted environment. Try this again with this
deployment
file.
>I tried the latest code with this commit from the CVS. The EchoAttachment
>sample still fails with with a server-side exception which indicates that
>there is a parameter mismatch to call
>"EchoAttachmentService.echo(javax.activation.DataHandler)" with a
>"org.apache.axis.attachments.AttachmentPart". It's the same problem as I
>reported before.
>Thanks,
>Raymond
>----- Original Message -----
>From: "Russell Butek" <[EMAIL PROTECTED]>
>To: <[EMAIL PROTECTED]>
>Sent: Thursday, March 14, 2002 7:09 AM
>Subject: cvs commit: xml-axis/java/src/org/apache/axis/encoding/ser
>JAFDataHandlerDeserializerFactory.java
>
>> Does this mean Doug's issue #1 is now fixed? Can I now remove that
entry
>> in the "MUST DO FOR BETA 1" list?
>>
>> Russell Butek
>> [EMAIL PROTECTED]
>> ---------------------- Forwarded by Russell Butek/Austin/IBM on
03/14/2002
>> 09:08 AM ---------------------------
>>
>>
>>
>>
>>
>> [EMAIL PROTECTED] on 03/13/2002 10:20:52 PM
>>
>> Please respond to [EMAIL PROTECTED]
>>
>> To: [EMAIL PROTECTED]
>> cc:
>>
>> Subject: cvs commit: xml-axis/java/src/org/apache/axis/encoding/ser
>> JAFDataHandlerDeserializerFactory.java
>>
>>
>>
>>
>> rineholt 02/03/13 20:20:52
>>
>> Modified: java/samples/attachments EchoAttachment.java
>> java/src/org/apache/axis/client Call.java
>> java/src/org/apache/axis/encoding DeserializerImpl.java
>> java/src/org/apache/axis/encoding/ser
>> JAFDataHandlerDeserializerFactory.java
>> Log:
>> Fix attachment sample to print out error if fault occurs.
>AxisFautl.dump
>> is now silient
>> Fix Call so it recognizes the SOAPBody part in WSDL with attachments.
>> Fix to invoke serializer for attachments in arrays.
>>
>> Revision Changes Path
>> 1.9 +3 -2
>> xml-axis/java/samples/attachments/EchoAttachment.java
>>
>> Index: EchoAttachment.java
>> ===================================================================
>> RCS file:
>> /home/cvs/xml-axis/java/samples/attachments/EchoAttachment.java,v
>> retrieving revision 1.8
>> retrieving revision 1.9
>> diff -u -r1.8 -r1.9
>> --- EchoAttachment.java 27 Feb 2002 02:57:22 -0000 1.8
>> +++ EchoAttachment.java 14 Mar 2002 04:20:52 -0000 1.9
>> @@ -122,6 +122,7 @@
>> qnameAttachment,
>>
JAFDataHandlerSerializerFactory.class,
>>
>JAFDataHandlerDeserializerFactory.class);
>> +
>>
>> call.addParameter( "source", qnameAttachment,
>> ParameterMode.PARAM_MODE_IN ); //Add the file.
>> @@ -329,8 +330,8 @@
>> if ( e instanceof AxisFault ) {
>> ((AxisFault) e).dump();
>> }
>> - else
>> - e.printStackTrace();
>> + System.err.println(e);
>> + e.printStackTrace();
>> }
>> System.exit(18);
>> }
>>
>>
>>
>> 1.94 +17 -0
xml-axis/java/src/org/apache/axis/client/Call.java
>>
>> Index: Call.java
>> ===================================================================
>> RCS file:
/home/cvs/xml-axis/java/src/org/apache/axis/client/Call.java,v
>> retrieving revision 1.93
>> retrieving revision 1.94
>> diff -u -r1.93 -r1.94
>> --- Call.java 13 Mar 2002 19:50:58 -0000 1.93
>> +++ Call.java 14 Mar 2002 04:20:52 -0000 1.94
>> @@ -881,6 +881,23 @@
>> list = bIn.getExtensibilityElements();
>> for ( int i = 0 ; list != null && i < list.size() ; i++ )
{
>> Object obj = list.get(i);
>> + if( obj instanceof
>> javax.wsdl.extensions.mime.MIMEMultipartRelated){
>> + javax.wsdl.extensions.mime.MIMEMultipartRelated mpr
=
>> + (javax.wsdl.extensions.mime.MIMEMultipartRelated)
>obj;
>> + Object part= null;
>> + List l= mpr.getMIMEParts();
>> + for(int j=0; l!= null && j< l.size() && part==
null;
>> j++){
>> + javax.wsdl.extensions.mime.MIMEPart mp
>> + = (javax.wsdl.extensions.mime.MIMEPart)l.get(j);
>> + List ll= mp.getExtensibilityElements();
>> + for(int k=0; ll!= null && k< ll.size() && part==
>> null; k++){
>> + part= ll.get(k);
>> + if ( !(part instanceof SOAPBody)) part = null;
>> + }
>> + }
>> + if(null != part) obj= part;
>> + }
>> +
>> if ( obj instanceof SOAPBody ) {
>> SOAPBody sBody = (SOAPBody) obj ;
>> list = sBody.getEncodingStyles();
>>
>>
>>
>> 1.6 +14 -1
>> xml-axis/java/src/org/apache/axis/encoding/DeserializerImpl.java
>>
>> Index: DeserializerImpl.java
>> ===================================================================
>> RCS file:
>>
>/home/cvs/xml-axis/java/src/org/apache/axis/encoding/DeserializerImpl.java,v
>>
>> retrieving revision 1.5
>> retrieving revision 1.6
>> diff -u -r1.5 -r1.6
>> --- DeserializerImpl.java 6 Mar 2002 19:35:49 -0000 1.5
>> +++ DeserializerImpl.java 14 Mar 2002 04:20:52 -0000 1.6
>> @@ -62,6 +62,7 @@
>> import org.apache.axis.message.SAX2EventRecorder;
>> import org.apache.axis.message.SAXOutputter;
>> import org.apache.axis.message.SOAPHandler;
>> +import org.apache.axis.Part;
>> import org.apache.axis.utils.JavaUtils;
>> import org.apache.commons.logging.Log;
>> import org.apache.commons.logging.LogFactory;
>> @@ -366,13 +367,25 @@
>> ((MessageElement)ref).publishToHandler
((DefaultHandler)
>> context);
>> context.setRecorder(r);
>> } else {
>> +
>> + if( !href.startsWith("#") && defaultType != null &&
ref
>> instanceof Part ){
>> + //For attachments this is the end of the road--
>> invoke deserializer
>> + Deserializer dser=
>> context.getDeserializerForType(defaultType );
>> + if(null != dser){
>> + dser.startElement(namespace, localName,
>> + qName, attributes,
>> + context);
>> + ref = dser.getValue();
>> +
>> + }
>> + }
>> +
>> // If the ref is not a MessageElement, then it must
be
>> an
>> // element that has already been deserialized. Use
it
>> directly.
>> value = ref;
>> valueComplete();
>> }
>>
>> - // !!! INSERT DEALING WITH ATTACHMENTS STUFF HERE?
>> } else {
>> isHref = false;
>> onStartElement(namespace, localName, qName, attributes,
>>
>>
>>
>> 1.2 +6 -0
>>
>xml-axis/java/src/org/apache/axis/encoding/ser/JAFDataHandlerDeserializerFac
>tory.java
>>
>>
>> Index: JAFDataHandlerDeserializerFactory.java
>> ===================================================================
>> RCS file:
>>
>/home/cvs/xml-axis/java/src/org/apache/axis/encoding/ser/JAFDataHandlerDeser
>ializerFactory.java,v
>>
>> retrieving revision 1.1
>> retrieving revision 1.2
>> diff -u -r1.1 -r1.2
>> --- JAFDataHandlerDeserializerFactory.java 26 Jan 2002 02:40:34
-0000
>> 1.1
>> +++ JAFDataHandlerDeserializerFactory.java 14 Mar 2002 04:20:52
-0000
>> 1.2
>> @@ -78,17 +78,23 @@
>> import org.apache.axis.encoding.DeserializationContext;
>> import org.apache.axis.encoding.DeserializerImpl;
>>
>> +import org.apache.commons.logging.Log;
>> +import org.apache.commons.logging.LogFactory;
>> +
>> /**
>> * A JAFDataHandlerDeserializer Factory
>> *
>> * @author Rich Scheuerle ([EMAIL PROTECTED])
>> */
>> public class JAFDataHandlerDeserializerFactory extends
>> BaseDeserializerFactory {
>> + protected static Log log =
>> LogFactory.getLog(JAFDataHandlerDeserializerFactory.class.getName());
>>
>> public JAFDataHandlerDeserializerFactory(Class javaType, QName
>> xmlType) {
>> super(JAFDataHandlerDeserializer.class, false, xmlType,
>> javaType);
>> + log.debug("Enter JAFDataHandlerDeserializerFactory ("
>> +javaType+", "+xmlType+")");
>> }
>> public JAFDataHandlerDeserializerFactory() {
>> super(JAFDataHandlerDeserializer.class, false);
>> + log.debug("Enter JAFDataHandlerDeserializerFactory ()" );
>> }
>> }
>>
>>
>>
>>
>>
Rick Rineholt
"The truth is out there... All you need is a better search engine!"
[EMAIL PROTECTED]