2014-03-01 109 views
0

我正在使用Google端点构建REST API。当我使用maven构建时,出现以下错误。生成服务时出现错误的请求错误

Google App Engine Java SDK - get endpoints discovery doc... 
Using Class Name:se.deverything.webapi.endpoints.BloodPressureReadingEndpoint 
Using Class Name:se.deverything.webapi.endpoints.EventEndpoint 
Executing endpoints Command=[get-discovery-doc, -cp, C:\Git\monium\webapi\webapi-war\target\webapi-war-0-snapshot\WEB-INF\classes;C:\Git\monium\webapi\webapi-war\target/classes;C:\Git\monium\webapi\services\target\services-0-snapshot.jar;C:\Git\monium\webapi\model\target\model-0-snapshot.jar;C:\Users\Marthin\.m2\repository\jstl\jstl\1.2\jstl-1.2.jar;C:\Users\Marthin\.m2\repository\com\google\appengine\appengine-endpoints\1.8.7\appengine-endpoints-1.8.7.jar;C:\Users\Marthin\.m2\repository\javax\jdo\jdo-api\3.0.1\jdo-api-3.0.1.jar;C:\Users\Marthin\.m2\repository\javax\transaction\jta\1.1\jta-1.1.jar;C:\Users\Marthin\.m2\repository\org\eclipse\persistence\javax.persistence\2.1.0\javax.persistence-2.1.0.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-core\3.2.12\datanucleus-core-3.2.12.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-api-jpa\3.3.7\datanucleus-api-jpa-3.3.7.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-rdbms\3.2.11\datanucleus-rdbms-3.2.11.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-api-jdo\3.1.3\datanucleus-api-jdo-3.1.3.jar;C:\Users\Marthin\.m2\repository\com\google\appengine\appengine-api-1.0-sdk\1.8.7\appengine-api-1.0-sdk-1.8.7.jar, -o, C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints/WEB-INF, -w, C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints, -f, rest, se.deverything.webapi.endpoints.BloodPressureReadingEndpoint, se.deverything.webapi.endpoints.EventEndpoint] 
mar 01, 2014 9:05:28 EM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml 
INFO: Successfully processed C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints\WEB-INF/appengine-web.xml 
Error: 400 Bad Request 
{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "invalid", 
    "message": "Invalid Value" 
    } 
    ], 
    "code": 400, 
    "message": "Invalid Value" 
} 
} 

Using Class Name:se.deverything.webapi.endpoints.BloodPressureReadingEndpoint 
Using Class Name:se.deverything.webapi.endpoints.EventEndpoint 
Executing endpoints Command=[get-discovery-doc, -cp, C:\Git\monium\webapi\webapi-war\target\webapi-war-0-snapshot\WEB-INF\classes;C:\Git\monium\webapi\webapi-war\target/classes;C:\Git\monium\webapi\services\target\services-0-snapshot.jar;C:\Git\monium\webapi\model\target\model-0-snapshot.jar;C:\Users\Marthin\.m2\repository\jstl\jstl\1.2\jstl-1.2.jar;C:\Users\Marthin\.m2\repository\com\google\appengine\appengine-endpoints\1.8.7\appengine-endpoints-1.8.7.jar;C:\Users\Marthin\.m2\repository\javax\jdo\jdo-api\3.0.1\jdo-api-3.0.1.jar;C:\Users\Marthin\.m2\repository\javax\transaction\jta\1.1\jta-1.1.jar;C:\Users\Marthin\.m2\repository\org\eclipse\persistence\javax.persistence\2.1.0\javax.persistence-2.1.0.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-core\3.2.12\datanucleus-core-3.2.12.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-api-jpa\3.3.7\datanucleus-api-jpa-3.3.7.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-rdbms\3.2.11\datanucleus-rdbms-3.2.11.jar;C:\Users\Marthin\.m2\repository\org\datanucleus\datanucleus-api-jdo\3.1.3\datanucleus-api-jdo-3.1.3.jar;C:\Users\Marthin\.m2\repository\com\google\appengine\appengine-api-1.0-sdk\1.8.7\appengine-api-1.0-sdk-1.8.7.jar, -o, C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints/WEB-INF, -w, C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints, -f, rpc, se.deverything.webapi.endpoints.BloodPressureReadingEndpoint, se.deverything.webapi.endpoints.EventEndpoint] 
mar 01, 2014 9:05:29 EM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml 
INFO: Successfully processed C:\Git\monium\webapi\webapi-war\target/generated-sources/appengine-endpoints\WEB-INF/appengine-web.xml 
Error: 400 Bad Request 
{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "invalid", 
    "message": "Invalid Value" 
    } 
    ], 
    "code": 400, 
    "message": "Invalid Value" 
} 
} 

Endpoints discovery doc generation done. 

的pom.xml(建部分)

<build> 
     <outputDirectory>target/${project.artifactId}-${project.version}/WEB-INF/classes</outputDirectory> 

     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.3</version> 
       <configuration> 
        <webXml>${project.build.directory}/generated-sources/appengine-endpoints/WEB-INF/web.xml</webXml> 
        <archiveClasses>true</archiveClasses> 
        <webResources> 
         <resource> 
          <directory>${basedir}/src/main/webapp/WEB-INF</directory> 
          <filtering>true</filtering> 
          <targetPath>WEB-INF</targetPath> 
          <excludes> 
           <exclude>web.xml</exclude> 
          </excludes> 
         </resource> 
         <resource> 
          <directory>${project.build.directory}/generated-sources/appengine-endpoints</directory> 
          <includes> 
           <include>WEB-INF/*.discovery</include> 
           <include>WEB-INF/*.api</include> 
          </includes> 
         </resource> 
        </webResources> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <source>1.7</source> 
        <target>1.7</target> 
       </configuration> 
      </plugin> 

      <plugin> 
       <groupId>com.google.appengine</groupId> 
       <artifactId>appengine-maven-plugin</artifactId> 
       <version>${appengine.target.version}</version> 
       <configuration> 
        <enableJarClasses>false</enableJarClasses> 
        <oauth2>false</oauth2> 
       </configuration> 
       <executions> 
        <execution> 
         <goals> 
          <goal>endpoints_get_discovery_doc</goal> 
         </goals> 
        </execution>     
       </executions> 
      </plugin> 
     </plugins> 
    </build> 

任何人都知道这是为什么?

回答

0

我的错误的解决方案是更改api annotion上的版本。

我有这个

@Api(name="event", version="v1-0") 

,并切换到这个

@Api(name="event", version="v1") 

所以在这点,我没有按照某些版本的命名约定。如果有人知道确切的约定并有链接,请分享评论。

1

我们遇到了同样的问题。我们解决了它从@ApiMethod name参数中删除下划线的问题。

相关问题