I am trying to write a REST API to upload an attachment. I have written the API. But when I am trying to call from POSTMAN, It's throwing an exception.REST API:
@Consumes(MediaType.MULTIPART_FORM_DATA) public Response uploadFile( @FormDataParam("attachment") InputStream uploadedInputStream, @FormDataParam("attachment") FormDataContentDisposition fileDetail) { JSONObject response = new JSONObject(); JSONObject jobj = new JSONObject(); if (uploadedInputStream == null) { response = StringUtil.getErrorResponse("eleave", jobj, null); } else { try { response.put(Constants.RES_success, true); response = companyService.uploadAttachement(uploadedInputStream, fileDetail); } catch (JSONException ex) { _logger.log(Level.SEVERE, "CompanyRestService.changePassword", ex.getMessage()); response = StringUtil.getErrorResponse("e01", jobj, ex.getMessage()); } catch (Exception ex) { _logger.log(Level.SEVERE, "CompanyRestService.changePassword", ex.getMessage()); response = StringUtil.getErrorResponse("erp25", jobj, ex.getMessage()); } } return Response.status(200).entity(response.toString()).build(); }
I have tried as below screenshot but it's throwing an exception
Response:
org.glassfish.jersey.server.model.ModelValidationException: Validation of the application resource model has failed during application initialization.[[FATAL] No injection source found for a parameter of type public javax.ws.rs.core.Response com.krawler.eleave.ws.rest.v1.CompanyRestService.uploadFile(java.io.InputStream,com.sun.jersey.core.header.FormDataContentDisposition) at index 0.; source='ResourceMethod{httpMethod=POST, consumedTypes=[multipart/form-data], producedTypes=[], suspended=false, suspendTimeout=0, suspendTimeoutUnit=MILLISECONDS, invocable=Invocable{handler=ClassBasedMethodHandler{handlerClass=class com.krawler.eleave.ws.rest.v1.CompanyRestService, handlerConstructors=[org.glassfish.jersey.server.model.HandlerConstructor@7aa399f8]}, handlingMethod=public javax.ws.rs.core.Response com.krawler.eleave.ws.rest.v1.CompanyRestService.uploadFile(java.io.InputStream,com.sun.jersey.core.header.FormDataContentDisposition), parameters=[Parameter [type=class java.io.InputStream, source=attachment, defaultValue=null], Parameter [type=class com.sun.jersey.core.header.FormDataContentDisposition, source=attachment, defaultValue=null]], responseType=class javax.ws.rs.core.Response}, nameBindings=[]}']
Dependancies:
<dependencies><dependency><groupId>cglib</groupId><artifactId>cglib-nodep</artifactId><version>3.1</version></dependency><dependency><groupId>asm</groupId><artifactId>asm</artifactId><version>3.1</version></dependency><dependency><groupId>com.mycompany</groupId><artifactId>poi-3.5-beta6</artifactId><version>20090622</version></dependency><dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1</version></dependency><dependency><groupId>backport-util-concurrent</groupId><artifactId>backport-util-concurrent</artifactId><version>3.1</version></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.3</version></dependency><dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.1</version></dependency><dependency><groupId>commons-digester</groupId><artifactId>commons-digester</artifactId><version>2.0</version></dependency><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.2.1</version></dependency><dependency><groupId>commons-httpclient</groupId><artifactId>commons-httpclient</artifactId><version>3.0</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>1.4</version></dependency><dependency><groupId>commons-lang</groupId><artifactId>commons-lang</artifactId><version>2.4</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1.1</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging-api</artifactId><version>1.0.4</version></dependency><dependency><groupId>commons-pool</groupId><artifactId>commons-pool</artifactId><version>1.1</version></dependency><dependency><groupId>net.sf.ezmorph</groupId><artifactId>ezmorph</artifactId><version>1.0.4</version></dependency><dependency><groupId>net.sf.flexjson</groupId><artifactId>flexjson</artifactId><version>3.0</version></dependency><dependency><groupId>ch.ethz.ganymed</groupId><artifactId>ganymed-ssh2</artifactId><version>build210</version></dependency><dependency><groupId>org.mnode.ical4j</groupId><artifactId>ical4j</artifactId><version>1.0.3</version></dependency><dependency><groupId>com.lowagie</groupId><artifactId>itext</artifactId><version>2.1.7</version></dependency><dependency><groupId>oro</groupId><artifactId>oro</artifactId><version>2.0.8</version></dependency><dependency><groupId>net.sf.jasperreports</groupId><artifactId>jasperreports</artifactId><version>4.1.2</version></dependency><dependency><groupId>com.octo.captcha</groupId><artifactId>jcaptcha-all</artifactId><version>1.0-RC6</version></dependency><dependency><groupId>jdom</groupId><artifactId>jdom</artifactId><version>1.1</version></dependency><dependency><groupId>org.mortbay.jetty</groupId><artifactId>jetty</artifactId><version>6.1.6</version></dependency><dependency><groupId>org.mortbay.jetty</groupId><artifactId>jetty-util</artifactId><version>6.1.6</version></dependency><dependency><groupId>com.uwyn</groupId><artifactId>jhighlight</artifactId><version>1.0</version></dependency><dependency><groupId>jmimemagic</groupId><artifactId>jmimemagic</artifactId><version>0.0.4a</version></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>2.4</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version></dependency><dependency><groupId>com.mycompany</groupId><artifactId>KrawlerJsonLib</artifactId><version>1.0</version></dependency><dependency><groupId>com.mycompany</groupId><artifactId>krawlersso</artifactId><version>1.2</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.12</version></dependency><dependency><groupId>org.apache.lucene</groupId><artifactId>lucene-core</artifactId><version>1.9.1</version></dependency><dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.46</version></dependency><dependency><groupId>org.tmatesoft.svnkit</groupId><artifactId>svnkit</artifactId><version>1.3.1</version></dependency><dependency><groupId>com.paypal.sdk</groupId><artifactId>paypal-core</artifactId><version>1.4.3</version></dependency><dependency><groupId>pdfbox</groupId><artifactId>pdfbox</artifactId><version>0.7.3</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.7</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-contrib</artifactId><version>3.7-beta3</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.7</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>3.7</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-scratchpad</artifactId><version>3.7</version></dependency><dependency><groupId>rome</groupId><artifactId>rome</artifactId><version>1.0</version></dependency><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency><dependency><groupId>org.tuckey</groupId><artifactId>urlrewritefilter</artifactId><version>3.2.0</version></dependency><dependency><groupId>xerces</groupId><artifactId>xercesImpl</artifactId><version>2.8.0</version></dependency><dependency><groupId>org.apache.xmlbeans</groupId><artifactId>xmlbeans</artifactId><version>2.6.0</version></dependency><dependency><groupId>xom</groupId><artifactId>xom</artifactId><version>1.1</version></dependency><dependency><groupId>org.glassfish.jersey.containers</groupId><artifactId>jersey-container-servlet</artifactId><version>${jersey-version}</version><exclusions><exclusion><groupId>org.glassfish.hk2.external</groupId><artifactId>asm-all-repackaged</artifactId></exclusion><exclusion><groupId>org.glassfish.hk2.external</groupId><artifactId>cglib</artifactId></exclusion></exclusions></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version></dependency><dependency><groupId>org.glassfish.jersey.media</groupId><artifactId>jersey-media-json-jackson</artifactId><version>${jersey-version}</version></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.6.0</version></dependency><dependency><groupId>com.googlecode.json-simple</groupId><artifactId>json-simple</artifactId><version>1.1</version></dependency><dependency><groupId>org.glassfish.jersey.media</groupId><artifactId>jersey-media-multipart</artifactId><version>${jersey-version}</version></dependency></dependencies>