0
Google App Engineでバックエンドをホストしていて、残りのAPIがlocalhostでうまく動作します。メソッドURLは次のとおりです。Java Rest APIメソッドは公開後に404が見つかりません。
http://127.0.0.1:8888/rest/plans/getplans/242353
これはローカルホストで動作し、JSON応答を正しく返します。 GETメソッドとは、メソッドに渡すパラメータです。
しかし、私は、次のURLで私のブラウザ上でそれを呼び出そうとした後、私は、私のGoogleクラウドに公開する場合:
Error: Not Found
The requested URL /rest/plans/getplans/242353 was not found on this server.
:私は私のブラウザ上で、このエラーを取得する
http://2-dot-MY_APP_DOMAIN.appspot.com/rest/plans/getplans/242353
web.xmlの
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee">
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.dinukapj.socialapp.api</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/resources/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
これはなぜ起こるのでしょうか? web.xmlに他の情報を追加する必要がありますか?
/rest部分がない場合は、 – Dinuka
の代わりに/ rest/plans/getplans/242353 try/resources/plans/getplans/242353 – Abilash
小さな問題、残りのAPIが呼び出されますが、データベースデータは配信されません。このメソッドは、基本的にDBからSELECT *クエリを取得します。 Localhostで動作しますが、公開後は動作しません。公開前にGoogle Cloudで設定する必要のある設定はありますか? @Abilash – Dinuka