A lot of thank you guys.It worked for me when i removed these two lines.
Really appreciated your help.
dkulp wrote:
>
>
> Try pulling out the lines:
>
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
>
> and seeing what happens. Please post the new stack trace.
>
>
> Dan
>
>
>
>
> On Thu December 17 2009 12:43:52 pm surajchhetry wrote:
>> This is my code ....
>>
>> @Path("/services/upload")
>> @WebService(serviceName = "upload", name = "UploadWebService",
>> targetNamespace = "http://ws.surajchh.com")
>> public interface TestServiceAPI {
>>
>> @Consumes("multipart/form-data")
>> @WebMethod(operationName = "video")
>> @POST
>> @Path("/video")
>> @WebResult(name = "UploadedUrl")
>>
>> public String uploadVideo(@WebParam(name = "data") @PathParam("data")
>> @XmlMimeType("application/octet-stream")DataHandler data) throws
>> ServiceException;
>> }
>>
>>
>> ----------------------------
>>
>> public class TestServiceAPIImpl implements TestServiceAPI {
>>
>> private final Log logger = LogFactory.getLog(this.getClass());
>>
>> @Autowired
>> @Qualifier("wsMessageSource")
>> private MessageSource messageSource;
>>
>> private String videoPath;
>>
>> @Override
>> public String uploadVideo(DataHandler data) throws ServiceException {
>> try {
>> this.videoPath =
> messageSource.getMessage("video.rootDirectory", null,
>> null,null);
>> this.logger.info("vpath = "+this.videoPath);
>> if(videoPath== null)
>> throw new ServiceException("Configuration
>> error");
>> this.logger.info("Validate.....");
>> this.logger.info("Uploading video......");
>> this.logger.info("VideoRootPath ="+videoPath);
>> this.logger.info("Uploading video......contanint
>> found");
>> //InputStream inputStream =
>> dataHandler.getInputStream();
>> this.logger.info("Uploading video......inserting video
>> info");
>> String url = this.videoService.createVideo(videoInfo);
>> this.logger.info("Uploading video......processing
>> upload");
>> String uploadPath = this.processUpload(data);
>> return uploadPath;
>> } catch (Exception e) {
>> throw new ServiceException(e.getMessage());
>> }
>> }
>>
>> private String processUpload(DataHandler dataHandler) throws Exception {
>> int videoId = 22;
>> String videoPath = this.videoPath+ File.separator + videoId;
>> File f = new File(videoPath);
>> final String uploadPath = f.getPath() + File.separator +
>> videoId +
> "."+
>> avi;
>> File tempFile = File.createTempFile("upload" + videoId,
>> fileType);
>> OutputStream outputStream = new FileOutputStream(tempFile);//
>> new//
>> File(uploadPath)
>> synchronized (dataHandler) {
>> synchronized (outputStream) {
>> byte[] b = new byte[2048];
>> while (true) {
>> int byteRead =
>> dataHandler.getInputStream().read(b);
>> if (byteRead == -1)
>> break;
>> outputStream.write(b, 0, byteRead);
>> }
>> outputStream.flush();
>> outputStream.close();
>> File serverFile = new File(uploadPath);
>> tempFile.renameTo(serverFile);
>> logger.debug("Uploading Done...");
>> return uploadPath;
>> }
>> }
>> }
>>
>> }
>>
>> ------------------Testuploader------------------
>>
>> public class UploadClientTest {
>>
>> public static void main(String args[]) throws Exception {
>> testVideoUpload();
>> System.exit(0);
>>
>> }
>>
>> private static void testVideoUpload() {
>>
>> TestServiceAPI client = createUploadService();
>> String fileName = System.getProperty("user.home")+
>> File.separator+"Videos"+File.separator+"videos.zip";
>> System.out.println("File path :" +fileName);
>> DataSource source = new FileDataSource(new File(fileName));
>> client.uploadVideo(new DataHandler(source));
>> }
>>
>> private static TestServiceAPI createUploadService() {
>>
>> System.out.println("File path :" +s);
>> long timeout = 100000L;//60000
>>
>> Map<String,Object> props = new HashMap<String, Object>();
>> props.put("mtom-enabled", Boolean.TRUE);
>> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
>>
>> factory.getInInterceptors().add(new LoggingInInterceptor());
>> factory.getOutInterceptors().add(new LoggingOutInterceptor());
>> factory.setServiceClass(UploadService.class);
>>
>> factory.setAddress("http://localhost:8080/uplaodTest/api/services/upload");
>> factory.setProperties(props);
>> UploadService client = (UploadService) factory.create();
>>
>> //
>> Client clientCfx = ClientProxy.getClient(client);
>> HTTPConduit conduit = (HTTPConduit) clientCfx.getConduit();
>>
>> HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
>> httpClientPolicy.setConnectionTimeout(0);
>> httpClientPolicy.setReceiveTimeout(0);
>> httpClientPolicy.setAllowChunking(true);
>> // ((HTTPConduit)
>> factory.getClientFactoryBean().getClient().getConduit()).setClient(httpClie
>> ntPolicy); conduit.setClient(httpClientPolicy);
>> return client;
>> }
>>
>> }
>>
>
> --
> Daniel Kulp
> [email protected]
> http://www.dankulp.com/blog
>
>
--
View this message in context:
http://old.nabble.com/MTOM-OutOfMemory-tp26544421p26841764.html
Sent from the cxf-user mailing list archive at Nabble.com.