2017-01-05 16 views
1

この質問はここで確認されています。しかし、何かが私に間違っていたようです。私は単純にフォームデータを私のjackson依存関係を持っている私のコントローラに投稿しています。しかし、HTTPステータス405要求メソッドがサポートされていないというエラーを投げかけています。HTTPステータス405 - 要求されたリソースに対して指定されたHTTPメソッドが許可されていません

ここに私のコントローラだ

@RequestMapping(value="/addCompany",method=RequestMethod.POST) 
    [email protected] String userLogin(HttpServletRequest req,@RequestBody CompanyRegVO user){ 
    logger.debug("signUp user:"+user); 
    // get reCAPTCHA request param 
    String gRecaptchaResponse = req.getParameter("g-recaptcha-response"); 
    boolean isVerified= Verify.verifyGcaptchResponse(gRecaptchaResponse); 
    ObjectMapper mapper=new ObjectMapper(); 
    String jsonString=""; 
} 

これは、私はこれが私のCompnayRegVO

public class CompanyRegVO { 
private String companyName; 
private Integer regNumber; 
private String password; 
private String confirmPassword; 
private String type; 
private String email; 
private String dob; 
private Boolean enabled; 
private AddressVO address; 
//getters and setter 
} 

編集1である

home='<%=request.getContextPath()%>'; 
$('#userReg').submit(function(event){ 
    var add = {} 
    add["type"] = $("#type").val(); 
    add["name"] = $("#companyName").val(); 
    add["regNumber"] = $("#regNumber").val(); 
    add["dob"] = $("#dob").val(); 
    add["email"] = $("#email").val(); 
    add["password"] = $("#password").val(); 
    add["confirmPassword"] = $("#cpassword").val(); 
    add["line1"] = $("#line1").val(); 
    add["line2"] = $("#line2").val(); 
    add["state"] = $("#state").val(); 
    add["country"] = $("#country").val(); 
    add["zipCode"] = $("#zipCode").val(); 
    console.log("search: ", add); 
    event.preventDefault(); 
    $.ajax({ 
     type : "POST", 
      headers: { 
       'Accept': 'application/json', 
       'Content-Type': 'application/json' 
      }, 

     url : home+"/addCompany", 
     data : JSON.stringify(add), 
     dataType : 'json', 
     timeout : 100000, 
     success : function(data) { 
      console.log("SUCCESS: ", data); 
      alert(data) 

     }, 
     error : function(e) { 
      console.log("ERROR: ", e); 
      alert(e); 

     },done : function(e) { 
      console.log("DONE"); 
     } 
}); 

を使用していた私のjqueryのです。 は、ここで私は私のcompnayRegVOにAddressVOオブジェクトを持っていますが、はい、それを是正するためにしてくださいどのようならば、私のJSONは??アドレスオブジェクトを持っていないので、このエラーは私のPOM

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>task</groupId> 
    <artifactId>basicPages</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>basicPages Maven Webapp</name> 
    <url>http://maven.apache.org</url> 
    <properties> 
     <spring.version>4.2.5.RELEASE</spring.version> 
     <jcl.slf4j.version>1.7.12</jcl.slf4j.version> 
     <logback.version>1.1.3</logback.version> 

    </properties> 

    <repositories> 
     <repository> 
      <id>Java.Net</id> 
      <url>http://download.java.net/maven/2/</url> 
     </repository> 
    </repositories> 
    <dependencies> 

     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>3.8.1</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-core</artifactId> 
      <version>4.3.6.Final</version> 
     </dependency> 
     <!-- JSON lib --> 
     <dependency> 
      <groupId>org.glassfish</groupId> 
      <artifactId>javax.json</artifactId> 
      <version>1.0.4</version> 
     </dependency> 
     <!--to send email --> 
     <dependency> 
      <groupId>javax.mail</groupId> 
      <artifactId>mail</artifactId> 
      <version>1.4.3</version> 
     </dependency> 


     <!-- google recaptcha --> 
     <!-- https://mvnrepository.com/artifact/net.tanesha.recaptcha4j/recaptcha4j --> 
     <dependency> 
      <groupId>net.tanesha.recaptcha4j</groupId> 
      <artifactId>recaptcha4j</artifactId> 
      <version>0.0.7</version> 
     </dependency> 

     <!-- Spring framework START --> 
     <!-- http://mvnrepository.com/artifact/org.springframework/spring-core --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <!-- http://mvnrepository.com/artifact/org.springframework/spring-web --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <!-- http://mvnrepository.com/artifact/org.springframework/spring-webmvc --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <!-- Spring framework END --> 
     <!-- Spring Security Artifacts - START --> 
     <!-- http://mvnrepository.com/artifact/org.springframework.security/spring-security-web --> 
     <dependency> 
      <groupId>org.springframework.security</groupId> 
      <artifactId>spring-security-web</artifactId> 
      <version>4.0.4.RELEASE</version> 
     </dependency> 

     <!-- http://mvnrepository.com/artifact/org.springframework.security/spring-security-config --> 
     <dependency> 
      <groupId>org.springframework.security</groupId> 
      <artifactId>spring-security-config</artifactId> 
      <version>4.0.4.RELEASE</version> 
     </dependency> 
     <!-- Spring Security Artifacts - END --> 

     <!-- Jstl for jsp page --> 
     <!-- http://mvnrepository.com/artifact/javax.servlet/jstl --> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>jstl</artifactId> 
      <version>1.2</version> 
     </dependency> 

     <!-- Servlet API --> 
     <!-- http://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <version>3.1.0</version> 
      <scope>provided</scope> 
     </dependency> 

     <!-- JSP API --> 
     <!-- http://mvnrepository.com/artifact/javax.servlet.jsp/jsp-api --> 
     <dependency> 
      <groupId>javax.servlet.jsp</groupId> 
      <artifactId>jsp-api</artifactId> 
      <version>2.2</version> 
      <scope>provided</scope> 
     </dependency> 

     <!-- MySQL JDBC driver --> 
     <!-- http://mvnrepository.com/artifact/mysql/mysql-connector-java --> 
     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <version>5.1.34</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>jcl-over-slf4j</artifactId> 
      <version>${jcl.slf4j.version}</version> 
     </dependency> 

     <!-- 3. logback --> 
     <dependency> 
      <groupId>ch.qos.logback</groupId> 
      <artifactId>logback-classic</artifactId> 
      <version>${logback.version}</version> 
     </dependency> 


     <!-- SQLServer JDBC driver (JTDS) --> 
     <!-- http://mvnrepository.com/artifact/net.sourceforge.jtds/jtds --> 
     <dependency> 
      <groupId>net.sourceforge.jtds</groupId> 
      <artifactId>jtds</artifactId> 
      <version>1.3.1</version> 
     </dependency> 
     <dependency> 
      <groupId>com.fasterxml.jackson.core</groupId> 
      <artifactId>jackson-databind</artifactId> 
      <version>1.9.10</version> 
     </dependency> 
      <dependency> 
      <groupId>com.fasterxml.jackson.core</groupId> 
      <artifactId>jackson-core</artifactId> 
      <version>2.5.4</version> 
     </dependency> 
       <dependency> 
      <groupId>com.fasterxml.jackson.core</groupId> 
      <artifactId>jackson-databind</artifactId> 
      <version>2.5.4</version> 
     </dependency> 

    </dependencies> 

    <build> 
     <finalName>basicPages</finalName> 
    </build> 
</project> 

です。

+0

を入力してください。 – Jai

+0

申し訳ありませんが、私はあなたを取得していません –

+0

休憩クライアント/カールとサーバーに自分自身でJSONを送信してみてください...それはクライアントでなければならない場合、サーバーが動作するかどうかを確認してください。その後、デバッグコンソール(ネットワーク)を試し、両方の要求の間でdiference(body + header)を比較してください。空のJSONオブジェクトを送信することは、要求が正しいコントローラメソッドによって処理されているかどうかをテストする簡単な方法です。 –

答えて

0

申し訳ありません、 私は私のフォームにmethod = "POST"を追加したばかげた愚痴があります。私のサービスはjqueryを使用して公開されていないようにフォームの投稿を取っていたので、誰かが私に春のmvcがinternalResourceViewResolverを使ってURLでページをバインドすると言うならば疑いがあります。私はjqueryを使用して同じことを行うことができる方法はありますか?

関連する問題