2013-06-06 16 views
8

Chiều qua tôi đã tạo một dự án và triển khai phần phụ trợ trên thiết bị di động đã bắt đầu. Tôi đã chỉnh sửa mã máy khách và thực hiện một số chèn dữ liệu thành công.Trình khởi chạy Backend trên thiết bị di động Android không tìm thấy 404 ... một số lần

Một số thời gian (giờ) sau đó, tôi đã thay đổi mã cliend một lần nữa và chèn thất bại với lỗi:

com.google.api.client.googleapis.json.GoogleJsonResponseException: 404 Not Found 

Như tôi đã không làm bất kỳ thay đổi đáng kể trong đoạn code tôi kết luận rằng lỗi là về phía công cụ ứng dụng nên tôi đã triển khai lại dự án và giải quyết vấn đề. Các lần chèn lại xuất hiện lần nữa.

Sáng nay tôi đã quay lại với lỗi 404. Lần triển khai lại này không hoạt động.

Nhật ký lỗi tôi nhận được trong công cụ ứng dụng là:

Uncaught exception from servlet 
javax.servlet.UnavailableException: com.google.api.server.spi.config.ApiConfigException: <Entity [GoogleCloudEndpointConfiguration("EndpointV1")]: 
    clientIds = null 
    audiences = null 
> 
.audiences was not of type String or List<String>. 
    at org.mortbay.jetty.servlet.ServletHolder.makeUnavailable(ServletHolder.java:415) 
    at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:451) 
    at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339) 
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) 
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) 
    at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125) 
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 
    at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35) 
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 
    at com.google.apphosting.utils.servlet.JdbcMySqlConnectionCleanupFilter.doFilter(JdbcMySqlConnectionCleanupFilter.java:57) 
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 
    at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) 
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) 
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) 
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) 
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) 
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) 
    at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:266) 
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) 
    at org.mortbay.jetty.Server.handle(Server.java:326) 
    at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) 
    at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923) 
    at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76) 
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) 
    at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:146) 
    at com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:439) 
    at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:480) 
    at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:487) 
    at com.google.tracing.TraceContext.runInContext(TraceContext.java:774) 
    at com.google.tracing.TraceContext$DoInTraceContext.runInContext(TraceContext.java:751) 
    at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:342) 
    at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:334) 
    at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:484) 
    at com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251) 
    at java.lang.Thread.run(Thread.java:722) 

Bất cứ ý tưởng gì đang xảy ra và những gì tôi có thể làm gì để giải quyết nó?

+0

Tôi chưa thể thực hiện một lần chèn đơn lẻ với mẫu Hoạt động của Sổ khách. Lỗi: Một bánh mì nướng có lỗi này xuất hiện trong ứng dụng Android của tôi: com.google.api.client.googleapis.json.GoogleJsonResponseException: 404 Không tìm thấy Không tìm thấy. (Tôi đang sử dụng Android Studio) – Moberg

Trả lời

8

Tôi không hiểu hoàn toàn những gì đang diễn ra, nhưng tôi đã tìm ra cách để loại bỏ các lỗi 404 ở phía máy khách, do phía App Engine không phản hồi. Các lỗi được báo cáo trong nhật ký công cụ ứng dụng đang nói về id đối tượng và id ứng dụng cho ứng dụng. Đó là những giá trị bạn đặt khi bạn định cấu hình xác thực cho "Bảo mật bằng Id khách hàng".

Mobile Backend Settings page

Tôi thấy rằng nếu tôi đặt trong một số giá trị chuỗi giữ chỗ trong đó, lưu lại, và sau đó quay trở lại với "Open (chỉ dùng cho phát triển)" và lưu lại, động cơ ứng dụng sẽ không còn phải lỗi cấu hình và sẽ phản hồi ứng dụng Android của khách hàng.

Hiện tại tôi chỉ đến địa điểm mà các mục nhập được thực hiện trong dữ liệu Sổ khách. Nhưng điều này chắc chắn khiến tôi bắt đầu lại. Tôi hy vọng rằng nếu tôi thiết lập xác thực hoàn toàn thì vấn đề sẽ không trở lại.

+1

Mate, tôi gần như phá vỡ trong nước mắt. Vấn đề này đã khiến tôi phát điên trong nhiều tuần và tôi biết tôi sẽ không bao giờ đoán được giải pháp đó. Nó hoạt động ... Tôi chỉ muốn mua cho bạn một ly bia và cung cấp cho bạn một cái ôm: ') (Nghiêm túc, bạn thực hiện ngày của tôi) – Asincrono

+0

Vui mừng nó đã giúp. Cuối cùng tôi đã có toàn bộ bản demo Google IO cho Geek Serendipity, đây là nơi tôi gặp phải vấn đề. Đối với những người khác đang tìm kiếm một ví dụ điển hình, hãy kiểm tra bài đăng trên blog của Brad Abrams: http://bradabrams.com/2013/05/google-io-2013-session-overview-from-nothing-to-nirvana-in-minutes-cloud -backend-cho-bạn-android-ứng dụng-xây dựng-geek-serendipity/ –

+0

#Mill Lahti bạn có một dự án Android Studio ở đó mà bạn có thể đăng trong GitHub, cos điều này đang thúc đẩy tôi hạt ... –

1

Tôi đã gặp lỗi tương tự, lỗi đã biến mất sau khi triển khai lại ứng dụng phụ trợ trên bảng điều khiển đám mây.

+0

Tôi đã thử nhưng "loại" không hoạt động. Một số lần nó hoạt động sau một hoặc quá redeploys. Đôi khi không. Tất cả các lần tôi nhận được một chút điên rồ hơn. – Asincrono

+0

Điều này làm việc cho tôi, nhưng tôi đã cố gắng sửa chữa của Bill Lahti ở trên quá, vì vậy tôi không biết nếu sự kết hợp của cả hai được sắp xếp nó ... – ccbunney

1

Tôi thấy rằng sau khi triển khai lại phiên bản mới được tạo, thay vì đặt lại phiên bản mặc định. Khi chọn phiên bản mới này là 'mặc định', mọi thứ hoạt động như mong đợi.

Chọn dụ như mặc định ở (Main/bản):

https://appengine.google.com/adminlogs?&app_id=<project_id> 

Kiểm tra tại địa chỉ:

https://<project_id>.appspot.com/_ah/api/explorer 
0

Đây là việc sửa chữa hoàn hảo.

Đăng nhập vào công cụ ứng dụng. Nhấp vào Instances ở phía bên tay trái. Ở dưới cùng bên phải, bạn sẽ thấy tùy chọn là "Tắt"

Nhấp vào Tắt máy. (Shutdown không chỉ tắt máy. Khởi động lại nó).

Ví dụ được bắt đầu sau 10-12 giây. Lưu ý: Trong 10-12 giây này, công cụ ứng dụng không thể truy cập được. Vì vậy, nếu ứng dụng của bạn đang hoạt động, đám mây của bạn sẽ không hoạt động trong 10-12 giây này.

Làm mới trang sau 10 giây và đảm bảo bạn thấy tùy chọn Tắt máy. Điều này có nghĩa là cá thể của bạn được khởi động lại.

Bây giờ, thử lại và nó sẽ hoạt động. Gửi cho tôi email đến [email protected] nếu bạn vẫn có câu hỏi

+0

Kiểm tra câu trả lời bị chặn do @Bill Lathi cung cấp. Nó làm việc cho tôi và tôi không bao giờ có cùng một vấn đề nữa. – Asincrono

+0

Vâng, tôi đã làm những gì được gợi ý bởi @Bill Lathi nhưng điều đó không giúp được gì. Người mà tôi đã đăng đã giúp tôi. Tại thời điểm này, tôi không chắc chắn chính xác những gì đã gây ra vấn đề này. – Jay

Các vấn đề liên quan