Hi all!

I'm using the EJB3.0 spec. with JBoss AS 4.2.2 (and the related JBossWS version 
inside, of course), in order to create a Web Service using a Stateless Session 
Bean instead of a Servlet.
I'd like to send an attachment from within a Web Service method.

Here I explain my problem.
I programmed as follows my Stateless Session Bean:

  | ...
  | @Stateless(name="PortalInfoExchangeServiceEJB")
  | @WebService(
  |             name="PortalInfoExchange",
  |         serviceName="PortalInfoExchange",
  |         
targetNamespace="http://www.provincia.latina.it/servizi/ws/portal/PortalInfoExchange";,
  |             endpointInterface = 
"servizi.it.latina.provincia.portal.ws.PortalInfoExchangeWS")
  | @Remote(PortalInfoExchangeWS.class)
  | public class PortalInfoExchangeBean implements PortalInfoExchangeWS {
  |     @Resource WebServiceContext context;
  | ...
  |     public String interact(
  |                     String xmlData
  |     ) throws IllegalArgumentException {
  |             
  |             // Start-up
  |             String pdfFilePath = "/var/www/SOAPprova/prova.pdf";
  | ...
  |             // Attachment
  |             SOAPMessageContext msgContext = 
(SOAPMessageContext)context.getMessageContext();
  |             SOAPMessage soapMessage = msgContext.getMessage();
  |             DataHandler dh = new DataHandler(new 
FileDataSource(pdfFilePath));
  |             AttachmentPart attachment = 
soapMessage.createAttachmentPart(dh);
  | 
  |             soapMessage.addAttachmentPart(attachment);
  | ...
  |             // Return
  |             return "Ciao " + xQueryResult + "! [ xQuery: \"for $nome in 
doc('/home/cdc/workspace/LTPortalWS/build/classes/servizi/it/latina/provincia/portal/ws/tmp.xml')/dataWrapper/dati/nome
 return data($nome)\" ]";
  | }
  | 

But when I call this service from a PHP Client, sniffing the SOAP response 
packet I see this:


  | HTTP/1.1 200 OK
  | Server: Apache-Coyote/1.1
  | X-Powered-By: Servlet 2.4; JBoss-4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA 
date=200710221139)/Tomcat-5.5
  | Content-Type: text/xml;charset=UTF-8
  | Date: Thu, 06 Dec 2007 09:56:13 GMT
  | Connection: close
  | 
  | <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'>
  | <env:Header>
  | </env:Header>
  | <env:Body>
  | <ns2:interactResponse 
xmlns:ns2="http://www.provincia.latina.it/servizi/ws/portal/PortalInfoExchange";>
  | <xmlData>Ciao Claudio! [ xQuery: &quot;for $nome in 
doc('/home/cdc/workspace/LTPortalWS/build/classes/servizi/it/latina/provincia/portal/ws/tmp.xml')/dataWrapper/dati/nome
 return data($nome)&quot; ]</xmlData>
  | 
  | </ns2:interactResponse>
  | </env:Body>
  | </env:Envelope>
  | 

Please, could anyone suggest me why there's no attachment?
Have I got to change somehow manually the WSDL to specify that there will be an 
attachment?
Did I make something wrong into the code?

I searched a lot around the web, but found nothing...

Any help will be very appreciated!

Claudio Di Ciccio

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4110782#4110782

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4110782
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to