Sending image as attachment

I have generated endpoint from WSDL with IBM RAD 7.0.

I'm sending jpg image as attachment:

publicclass Send{

client-luokkia.

publicstaticvoid main(String[] args){

try{

AttachmentServiceLocator asl =new AttachmentServiceLocator();

AttachmentTip tip = asl.getAttachmentTip();

System.out.println("send image");

sendImage(tip,"file:///C:/temp/12a.jpg");

}catch (Throwable t){

t.printStackTrace();

}

}

staticvoid sendImage(AttachmentTip tip, String fileName)

throws RemoteException{

try{

Toolkit toolkit = Toolkit.getDefaultToolkit();

Image image = toolkit.createImage(fileName);

image.flush();

tip.sendImage(image);

System.out.println("image sent");

}catch (Exception e){

System.out.println("error " + e.getLocalizedMessage());

}

}

}

I get this erro from client:

17.4.2007 14:06:18 com.ibm.ws.webservices.engine.attachments.ImageDataSource <init>

SEVERE: WSWS3227E: Error: Exception:

java.lang.IllegalArgumentException: Width (-1) and height (-1) cannot be <= 0

at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:1031)

at java.awt.image.BufferedImage.<init>(BufferedImage.java:347)

at com.ibm.ws.webservices.engine.components.image.MerlinIO.privilegedSaveImage(MerlinIO.java:139)

at com.ibm.ws.webservices.engine.components.image.MerlinIO.access$000(MerlinIO.java:95)

at com.ibm.ws.webservices.engine.components.image.MerlinIO$1.run(MerlinIO.java:108)

at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)

at com.ibm.ws.webservices.engine.components.image.MerlinIO.saveImage(MerlinIO.java:106)

at com.ibm.ws.webservices.engine.attachments.ImageDataSource.<init>(ImageDataSource.java:107)

at com.ibm.ws.webservices.engine.attachments.ImageDataSource.<init>(ImageDataSource.java:98)

at com.ibm.ws.webservices.engine.encoding.ser.ImageDataHandlerSerializer.serialize(ImageDataHandlerSerializer.java:121)

at com.ibm.ws.webservices.engine.encoding.SerializationContextImpl.serializeActual(SerializationContextImpl.java:823)

at com.ibm.ws.webservices.engine.encoding.SerializationContextImpl.serialize(SerializationContextImpl.java:547)

at com.ibm.ws.webservices.engine.xmlsoap.ext.ParamValue.serializeItem(ParamValue.java:419)

at com.ibm.ws.webservices.engine.xmlsoap.ext.ParamValue.serialize(ParamValue.java:340)

at com.ibm.ws.webservices.engine.xmlsoap.ext.RequestResponse.outputImpl(RequestResponse.java:602)

at com.ibm.ws.webservices.engine.xmlsoap.ext.RequestResponseAlternateContent.serialize(RequestResponseAlternateContent.java:117)

at com.ibm.ws.webservices.engine.xmlsoap.SOAPElement.outputImpl(SOAPElement.java:1961)

at com.ibm.ws.webservices.engine.xmlsoap.SOAPElement.outputContentsImpl(SOAPElement.java:2042)

at com.ibm.ws.webservices.engine.xmlsoap.SOAPElement.outputImpl(SOAPElement.java:2017)

at com.ibm.ws.webservices.engine.xmlsoap.SOAPEnvelope.outputImpl(SOAPEnvelope.java:355)

at com.ibm.ws.webservices.engine.xmlsoap.SOAPElement.output(SOAPElement.java:1937)

at com.ibm.ws.webservices.engine.SOAPPart.writeTo(SOAPPart.java:897)

at com.ibm.ws.webservices.engine.SOAPPart.writeTo(SOAPPart.java:816)

at com.ibm.ws.webservices.engine.SOAPPart._getWebServicesInputSource(SOAPPart.java:950)

at com.ibm.ws.webservices.engine.SOAPPart.getAsWebServicesInputSource(SOAPPart.java:574)

at com.ibm.ws.webservices.engine.Message.getContentType(Message.java:498)

at com.ibm.ws.webservices.engine.transport.http.HTTPSender.invoke(HTTPSender.java:491)

at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:227)

at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:227)

at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:227)

at com.ibm.ws.webservices.engine.WebServicesEngine.invoke(WebServicesEngine.java:332)

at com.ibm.ws.webservices.engine.client.Connection.invokeEngine(Connection.java:738)

at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:659)

at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:617)

at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:452)

at com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:908)

at org.example.www.AttachmentBindingStub.sendImage(AttachmentBindingStub.java:86)

at fi.kela.testi.Send.sendImage(Send.java:38)

at fi.kela.testi.Send.main(Send.java:26)

What this mean? Does it mean that image is somehow null or what?

[5763 byte] By [basti78a] at [2007-11-27 1:18:57]
# 1
...> sendImage(tip, "file:///C:/temp/12a.jpg");...> Image image = toolkit.createImage(fileName);> ...Are you sure you can give Toolkit.createImage(String fileName) an URL? Perhaps you should call it with "c:/temp/12a.jpg" instead.
_NetMackan_a at 2007-7-11 23:55:06 > top of Java-index,Enterprise & Remote Computing,Enterprise Technologies...
# 2
OK. Solved. Just changed to this: File file = new File("C:/temp/12a.jpg");Image image = ImageIO.read(file);tip.sendImage(image);
basti78a at 2007-7-11 23:55:06 > top of Java-index,Enterprise & Remote Computing,Enterprise Technologies...