Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
Hi, ¿Anybody could send and example about implementing @RequestHandler and @ResponseHandler for make @XmlMimeType(application/octet-stream) works properly? Thanks dkulp wrote: Just FYI, I've logged a bug for the XmlSchema project: http://issues.apache.org/jira/browse/WSCOMMONS-261 Dan On Tuesday 16 October 2007, James Mao wrote: Sorry, False alarm, I'm testing against with the old distribution which not included Dan's fix The java2ws works perfect, I'll commit a test in java2ws soon Cheers, James Hi Dan, Is it fix the java2ws tools as well, or just the runtime? in the runtime the http header now should contain the application/octet-stream, right? But I tested with the java2ws, it's not working. the expectedContentTypes=image/png still missing in the schema James It's definitely a bug in XmlSchema. Updating to the latest version of XmlSchema helped a little bit, but not enough. It at least attempts to write the extensors. The problem is the parsing only saves the last extensor.I've worked around that bug by writing a Deserializer that actually works correctly so it should work now. Just committed the fix to trunk. Dan On Tuesday 16 October 2007, Daniel Kulp wrote: OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandle r- on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: --- - -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title;} public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() {return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } --- - -- -- My service is: --- - -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } --- - -- -- My cxf configuration is: --- - -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xs d http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans --- - -- -- The wsdl generated whit java2wsdl: --- - -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . --- - -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
Just FYI, I've logged a bug for the XmlSchema project: http://issues.apache.org/jira/browse/WSCOMMONS-261 Dan On Tuesday 16 October 2007, James Mao wrote: Sorry, False alarm, I'm testing against with the old distribution which not included Dan's fix The java2ws works perfect, I'll commit a test in java2ws soon Cheers, James Hi Dan, Is it fix the java2ws tools as well, or just the runtime? in the runtime the http header now should contain the application/octet-stream, right? But I tested with the java2ws, it's not working. the expectedContentTypes=image/png still missing in the schema James It's definitely a bug in XmlSchema. Updating to the latest version of XmlSchema helped a little bit, but not enough. It at least attempts to write the extensors. The problem is the parsing only saves the last extensor.I've worked around that bug by writing a Deserializer that actually works correctly so it should work now. Just committed the fix to trunk. Dan On Tuesday 16 October 2007, Daniel Kulp wrote: OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandle r- on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: --- - -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title;} public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() {return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } --- - -- -- My service is: --- - -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } --- - -- -- My cxf configuration is: --- - -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xs d http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans --- - -- -- The wsdl generated whit java2wsdl: --- - -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . --- - -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance. -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
I´m trying to implement the @RequestWrapper. My method returns a String and takes a class FicheroXML like a parameter, should I only implement the @RequestWrapper ?, in that case...What methods should have the class ? is there any examples about @RequestWrapper implementions Thanks in advance. Freeman Fang-2 wrote: Hi, As per the discussion [1], you need use @RequestWrapper/@ResponseWrapper to point to your wrapper bean FicheroXML in your SEI class. [1] http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler-on-server-t4210895.html Best Regards Freeman imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title; } public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() { return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } My service is: @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } My cxf configuration is: beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans The wsdl generated whit java2wsdl: . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance. -- View this message in context: http://www.nabble.com/MTOM-and-%40XmlMimeType%28%22application-octet-stream%22%29-annotation.-tf4632898.html#a13231184 Sent from the cxf-user mailing list archive at Nabble.com.
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler-on-s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title; } public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() { return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } My service is: @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } My cxf configuration is: beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans The wsdl generated whit java2wsdl: . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance. -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler-on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title; } public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() { return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } -- -- My service is: -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } -- -- My cxf configuration is: -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans -- -- The wsdl generated whit java2wsdl: -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance. -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
It's definitely a bug in XmlSchema. Updating to the latest version of XmlSchema helped a little bit, but not enough. It at least attempts to write the extensors. The problem is the parsing only saves the last extensor.I've worked around that bug by writing a Deserializer that actually works correctly so it should work now. Just committed the fix to trunk. Dan On Tuesday 16 October 2007, Daniel Kulp wrote: OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler- on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title; } public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() { return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } -- -- My service is: -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } -- -- My cxf configuration is: -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans -- -- The wsdl generated whit java2wsdl: -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance. -- J. Daniel Kulp Principal Engineer IONA P: 781-902-8727C: 508-380-7194 [EMAIL PROTECTED] http://www.dankulp.com/blog
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
Hi Dan, Is it fix the java2ws tools as well, or just the runtime? in the runtime the http header now should contain the application/octet-stream, right? But I tested with the java2ws, it's not working. the expectedContentTypes=image/png still missing in the schema James It's definitely a bug in XmlSchema. Updating to the latest version of XmlSchema helped a little bit, but not enough. It at least attempts to write the extensors. The problem is the parsing only saves the last extensor.I've worked around that bug by writing a Deserializer that actually works correctly so it should work now. Just committed the fix to trunk. Dan On Tuesday 16 October 2007, Daniel Kulp wrote: OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler- on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title; } public void setTitle(String title) {this.title = title; } @XmlTransient public DataHandler getXmlData() { return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } -- -- My service is: -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } -- -- My cxf configuration is: -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans -- -- The wsdl generated whit java2wsdl: -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance.
Re: MTOM and @XmlMimeType(application/octet-stream) annotation.
Sorry, False alarm, I'm testing against with the old distribution which not included Dan's fix The java2ws works perfect, I'll commit a test in java2ws soon Cheers, James Hi Dan, Is it fix the java2ws tools as well, or just the runtime? in the runtime the http header now should contain the application/octet-stream, right? But I tested with the java2ws, it's not working. the expectedContentTypes=image/png still missing in the schema James It's definitely a bug in XmlSchema. Updating to the latest version of XmlSchema helped a little bit, but not enough. It at least attempts to write the extensors. The problem is the parsing only saves the last extensor.I've worked around that bug by writing a Deserializer that actually works correctly so it should work now. Just committed the fix to trunk. Dan On Tuesday 16 October 2007, Daniel Kulp wrote: OK. Not a JAXB issue. Seems to be an XmlSchema issue. The DOM we feed into XmlSchema contains the contenttype stuff. If I immediately print the schema, it's gone. :-( Dan On Tuesday 16 October 2007, Daniel Kulp wrote: No, this is different. That thread talks about parameters to the SEI methods that should be attachments.In this case, this is a field inside one of the objects that is a parameter. This SHOULD work. We just pass the object class as-is to JAXB so this seems to be a JAXB issue. Dan On Tuesday 16 October 2007, Jim Ma wrote: This is not supported in CXF . This thread FYI: http://www.nabble.com/MTOM-sample-generated-WSDL-with-DataHandler- on -s erver-t4210895.html imorales wrote: Hi all. I´m trying to implemente a web service that uses MTOM Attachments. The way I´m doing is Annotation if JAXB bean. The problem is that the wsdl that I generate with ant task java2wsdl doesn´t add the annotation @XmlMimeType(application/octet-stream) in the wsdl:types. My bean is: -- -- @XmlType public class FicheroXML { private String title; @XmlMimeType(application/octet-stream) private DataHandler xmlData; public String getTitle() {return title;} public void setTitle(String title) {this.title = title;} @XmlTransient public DataHandler getXmlData() {return xmlData;} public void setXmlData(DataHandler xmlData) {this.xmlData = xmlData;} } -- -- My service is: -- -- @WebService public interface ServicioFormularios { @WebResult(name=uuid) String guardaFormulario(@WebParam(name=xml)FicheroXML xml); } -- -- My cxf configuration is: -- -- beans xmlns=http://www.springframework.org/schema/beans; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xmlns:jaxws=http://cxf.apache.org/jaxws; xsi:schemaLocation=http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd; import resource=classpath:META-INF/cxf/cxf.xml/ import resource=classpath:META-INF/cxf/cxf-extension-soap.xml/ import resource=classpath:META-INF/cxf/cxf-servlet.xml/ jaxws:endpoint id=servicioFormulario implementor=com.servicios.ServicioFormulariosImpl address=/servicioFormulario jaxws:properties entry key=mtom-enabled value=true/ /jaxws:properties /jaxws:endpoint /beans -- -- The wsdl generated whit java2wsdl: -- -- . .. ... xs:complexType name=ficheroXML xs:sequence xs:element minOccurs=0 name=xmlData type=xs:base64Binary/ xs:element minOccurs=0 name=title type=xs:string/ /xs:sequence /xs:complexType ... .. . xs:complexType name=guardaFormulario xs:sequence xs:element minOccurs=0 name=xml type=ficheroXML/ /xs:sequence /xs:complexType ... .. . -- -- Why the attribute (xmime:expectedContentTypes=application/octet-stream) isn´t in the xmlData element of FicheroXML ? Any ideas ... it seam like the annotation @XmlMimeType it´s not running. Thanks in advance.