· 9 years ago · Oct 20, 2016, 06:30 PM
1//creating local file
2 try {
3 FileOutputStream fileOut = new FileOutputStream(new File("C:\test.xls"));
4 excelWorkBook.write(fileOut);
5 fileOut.flush();
6 fileOut.close();
7
8 } catch (Exception e) {
9 // TODO Auto-generated catch block
10 e.printStackTrace();
11 }
12
13com.amazonaws.services.s3.model.AmazonS3Exception: Status Code: 400, AWS Service: Amazon S3, AWS Request ID: BC86F8AED980C7A3, AWS Error Code: RequestTimeout, AWS Error Message: Your socket connection to the server was not read from or written to within the timeout period. Idle connections will be closed., S3 Extended Request ID: P1yiux9HeVH92ifelvhMfTyQ27Hgu3sC4xx8DXstO+HLizMera2OkYv3BSVCEJtxtFz10/SRbMk=
14 at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:767)
15 at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:414)
16 at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:228)
17 at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3316)
18 at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1336)
19 at com.sterling.smartdata.service.upload.impl.UploadReportImpl.uploadToCloud(UploadReportImpl.java:96)
20 at com.sterling.smartdata.service.upload.impl.UploadCloudLocalImplTest.testUpload(UploadCloudLocalImplTest.java:33)
21 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
22 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
23 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
24 at java.lang.reflect.Method.invoke(Unknown Source)
25 at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
26 at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
27 at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
28 at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
29 at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
30 at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:74)
31 at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:85)
32 at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:86)
33 at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
34 at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:241)
35 at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:87)
36 at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
37 at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
38 at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
39 at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
40 at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
41 at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
42 at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
43 at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
44 at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:180)
45 at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
46 at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
47 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
48 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
49 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
50 at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
51
52public void uploadToCloud() {
53 AWSCredentials credentials = new BasicAWSCredentials(
54 accessKey,
55 secretKey);
56
57 AmazonS3 s3client = new AmazonS3Client(credentials);
58
59 HSSFWorkbook excelWorkBook=new HSSFWorkbook();
60 missingAbbreviationReport.createMissingChargeAbbreviationSheet(excelWorkBook);
61 missingAbbreviationReport.createMissingDispositionAbbreviationSheet(excelWorkBook);
62
63 //creating local file
64 try {
65 FileOutputStream fileOut = new FileOutputStream(new File("C:\test.xls"));
66 excelWorkBook.write(fileOut);
67 fileOut.flush();
68 fileOut.close();
69
70 } catch (Exception e) {
71 // TODO Auto-generated catch block
72 e.printStackTrace();
73 }
74
75
76 //upload to amazon s3
77 ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
78 try {
79 excelWorkBook.write(byteArrayOutputStream);
80 byteArrayOutputStream.close();
81 } catch (IOException e) {
82
83 LOGGER.error(e.getMessage());
84 }
85
86 byte[] bf=new byte[byteArrayOutputStream.toByteArray().length];
87 ByteArrayInputStream bi=new ByteArrayInputStream(bf);
88 try {
89 bi.read(byteArrayOutputStream.toByteArray());
90 } catch (IOException e) {
91 // TODO Auto-generated catch block
92 e.printStackTrace();
93 }
94
95
96
97 ObjectMetadata objectMetaData =new ObjectMetadata();
98 objectMetaData.setContentType("application/vnd.ms-excel");
99 objectMetaData.setContentLength(byteArrayOutputStream.toByteArray().length);
100
101 s3client.putObject(new PutObjectRequest("smartdata-missingslg-reports", "test.xls",bi,objectMetaData) );
102
103 }