- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在执行从我的 Android 应用程序到我的 Google 应用程序的简单 http 发布请求时遇到问题。
所以这是错误信息:
07-16 15:58:02.314: E/AndroidRuntime(911): FATAL EXCEPTION: main
07-16 15:58:02.314: E/AndroidRuntime(911): java.lang.IllegalStateException: Could not execute method of the activity
它发生在我的 android 应用程序中的 httpclient.execute 命令中:
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://localhost:8888/mywebapp");
try {
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
}
在我的服务器上没有我到达我的 post 方法的痕迹:
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("SYL: POST request received");
super.doPost(req, resp);
}
服务器是 google webb 应用程序,在我的 eclipse 下本地运行,配置如下:
<servlet-name>MyWebApp</servlet-name>
<servlet-class>com.my.mywebapp.MyWebAppServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyWebApp</servlet-name>
<url-pattern>/mywebapp/*</url-pattern>
</servlet-mapping>
如果测试我通过 Web 导航器调用的 get 方法,它会起作用。但是在 java 中调用 get(与我对帖子所做的方式相同)不起作用。就像在 android 应用程序中一样,无法与我的服务器建立连接。
我设置了这些权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
有人可以帮帮我吗??
谢谢。
附言:
用 10.0.2.2 替换 localhost 还是一样的错误。我正在复制完整的痕迹:
07-16 18:13:34.945: E/AndroidRuntime(1081): FATAL EXCEPTION: main
07-16 18:13:34.945: E/AndroidRuntime(1081): java.lang.IllegalStateException: Could not execute method of the activity
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.view.View$1.onClick(View.java:3044)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.view.View.performClick(View.java:3511)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.view.View$PerformClick.run(View.java:14105)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.os.Handler.handleCallback(Handler.java:605)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.os.Handler.dispatchMessage(Handler.java:92)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.os.Looper.loop(Looper.java:137)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.app.ActivityThread.main(ActivityThread.java:4424)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.lang.reflect.Method.invokeNative(Native Method)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.lang.reflect.Method.invoke(Method.java:511)
07-16 18:13:34.945: E/AndroidRuntime(1081): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-16 18:13:34.945: E/AndroidRuntime(1081): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-16 18:13:34.945: E/AndroidRuntime(1081): at dalvik.system.NativeStart.main(Native Method)
07-16 18:13:34.945: E/AndroidRuntime(1081): Caused by: java.lang.reflect.InvocationTargetException
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.lang.reflect.Method.invokeNative(Native Method)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.lang.reflect.Method.invoke(Method.java:511)
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.view.View$1.onClick(View.java:3039)
07-16 18:13:34.945: E/AndroidRuntime(1081): ... 11 more
07-16 18:13:34.945: E/AndroidRuntime(1081): Caused by: android.os.NetworkOnMainThreadException
07-16 18:13:34.945: E/AndroidRuntime(1081): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.net.InetAddress.lookupHostByName(InetAddress.java:391)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:242)
07-16 18:13:34.945: E/AndroidRuntime(1081): at java.net.InetAddress.getAllByName(InetAddress.java:220)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
07-16 18:13:34.945: E/AndroidRuntime(1081): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
07-16 18:13:34.945: E/AndroidRuntime(1081): at com.my.my.MyActivity.sendMessage(MyActivity.java:72)
07-16 18:13:34.945: E/AndroidRuntime(1081): ... 14 more
最佳答案
如果你是在本地服务器调试,更改你要访问的IP,设置这个:10.0.2.2。所以,你的 httppost 看起来是这样的:
HttpPost httppost = new HttpPost("http://10.0.2.2:8888/mywebapp");
欲了解更多信息,http://developer.android.com/tools/devices/emulator.html#networkaddresses
关于Android应用程序doPost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11508488/
我正在开发一个带有 html/ftl 等的 Java 项目...... 我有一个 ftl 文件,其中包含如下列表: # Street Town Capacity ${ho.id} ${ho.
有没有一种方法可以在每次 doPost(req, res) 之后调用 method() 而不必重写 method()每个 servlet 中每个 doPost block 的末尾? 最佳答案 最简单的
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Servlets: doGet and doPost 我知道 doGet() 请求附加到查询字符串中的请求
我正在尝试将 Google 脚本转换为 Web App ,使用 CLASP。doGet(e) 中是否存在“e”对象的类型定义?/doPost(e)我可以在 typescript/clasp 方面使用吗
调用servlet时,调用dopost时某些字段不为空。如何在启动 servlet 时确保该字段始终为空。示例: import java.io.*; import javax.servlet.*
我们有一个长期工作的 doPost 方法,它会阻塞 Jetty 线程 protected void doPost(HttpServletRequest request, HttpServletResp
我正在将用户发送到 servlet Login,其中 doPost 方法是: protected void doPost(HttpServletRequest request, HttpServlet
我是网络编程的初学者。我使用 Eclipse Java EE 创建了一个应用程序,并在本地主机中运行了一个 Tomcat 服务器。 应用程序的目标是从客户端获取信息并发回其他信息。 我开发了一个 se
我有兴趣创建一个使用 JSP、Servlet 和 XML 的网络应用程序。 目前我有以下内容: JSP - 表单输入。 Servlet - 检索表单数据并将该数据发送到 java 对象。 Java 对
这个问题在这里已经有了答案: doGet and doPost in Servlets (5 个答案) 关闭 6 年前。 我有 2 个参数,User 和 Pass。我想将它们发送到一个 servle
下面的index.html调用(下面的)servet的doPost来查看某个url是否可以用于拍卖。一切都运行得很好。但是,我希望在页面重定向之后从其他类执行两个附加方法。我的问题是其他两个附加方法需
这是一个简单的 html 页面: GET_POST Insert username and password
这个问题已经有答案了: doGet and doPost in Servlets (5 个回答) 已关闭 6 年前。 我正在尝试构建我的第一个 Servlet,但我不确定如何开始。 我有一个 REST
美好的一天! 我正在阅读 Head First Servlets and JSP,它说 99% 的 servlets 使用 HttpServlet。另外1%是什么?它说在现实世界中,99.9% 的所有
编辑: 我将发布请求指向/vault/Login 但 servlet 在/vault/index 和 vault/login当将它指向索引时它起作用了。 我正在尝试制作一个登录系统。我有一个 html
我有一个基本的登录页面,它接受用户名和密码,并重定向到登录 servlet 以验证详细信息。 我还有一个过滤器,用于捕获传入登录 servlet 的任何请求,创建一个新对象,该对象将传入请求对象作为其
第一次来到 StackOverflow。我有一个关于 req.getParamter 的问题。我有一个校友类(class)()。在这个 Alumni 类中,我有一个 PersonalAddress 类
我正在尝试使用 http doPost() 构建一个简单的登录 servlet。 Login.html 是: Username :- Password :- 我的servlet代码是:Ser
我遇到了各种各样的问题,但没有一个能解决我的问题。我在谷歌应用程序脚本中写了一个简单的 doPost() 代码: function doPost(e){ Logger.log("Hello Wor
我正在使用 Servlet/JSP 测试基于表单的安全身份验证。我只是直接运行 servlet,它应该根据 web.xml 文件要求我进行登录身份验证。但它每次都只是简单地进入 doGET 方法。是的
我是一名优秀的程序员,十分优秀!