当前位置: 首页 > 面试题库 >

Android:尝试HttpURLConnection.getOutputStream()时抛出SocketException

景仲渊
2023-03-14
问题内容

这是我的第一个android程序,它是一个修改过的hello世界。我在MAC上的仿真器上运行它。我尝试与.NET
Web服务进行通信,但在处给出了异常connection.getOutputStream()。我可以从模拟器访问该站点。任何帮助表示赞赏:)

    URL url = new URL("http://192.168.3.47/service.asmx");
    HttpURLConnection connection = (HttpURLConnection)url.openConnection();
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Content-Type", 
     "application/soap+xml; charset=utf-8");

    connection.setUseCaches(false);
    connection.setDoInput(true);
    connection.setDoOutput(true);

    String soapRequest = String.format(getText(R.string.ws_listemain_ds_new).toString(), city, keyword);
    connection.setRequestProperty("Content-Length", Integer.toString(soapRequest.getBytes("UTF-8").length));
    //Send request
    OutputStreamWriter owr = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");



03-02 15:51:26.950: WARN/System.err(618): java.net.SocketException: Permission denied
03-02 15:51:26.978: WARN/System.err(618):     at org.apache.harmony.luni.platform.OSNetworkSystem.socket(Native Method)
03-02 15:51:26.988: WARN/System.err(618):     at dalvik.system.BlockGuard$WrappedNetworkSystem.socket(BlockGuard.java:335)
03-02 15:51:27.009: WARN/System.err(618):     at org.apache.harmony.luni.net.PlainSocketImpl.create(PlainSocketImpl.java:216)
03-02 15:51:27.018: WARN/System.err(618):     at java.net.Socket.checkOpenAndCreate(Socket.java:802)
03-02 15:51:27.037: WARN/System.err(618):     at java.net.Socket.connect(Socket.java:948)
03-02 15:51:27.048: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:75)
03-02 15:51:27.067: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:48)
03-02 15:51:27.079: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect(HttpConnection.java:322)
03-02 15:51:27.139: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:89)
03-02 15:51:27.158: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpConnection(HttpURLConnectionImpl.java:285)
03-02 15:51:27.167: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConnection(HttpURLConnectionImpl.java:267)
03-02 15:51:27.187: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:205)
03-02 15:51:27.197: WARN/System.err(618):     at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:614)
03-02 15:51:27.217: WARN/System.err(618):     at gyozo.HelloWorld.HelloActivity.onClick(HelloActivity.java:55)
03-02 15:51:27.269: WARN/System.err(618):     at android.view.View.performClick(View.java:2485)
03-02 15:51:27.311: WARN/System.err(618):     at android.view.View$PerformClick.run(View.java:9080)
03-02 15:51:27.327: WARN/System.err(618):     at android.os.Handler.handleCallback(Handler.java:587)
03-02 15:51:27.347: WARN/System.err(618):     at android.os.Handler.dispatchMessage(Handler.java:92)
03-02 15:51:27.367: WARN/System.err(618):     at android.os.Looper.loop(Looper.java:123)
03-02 15:51:27.447: WARN/System.err(618):     at android.app.ActivityThread.main(ActivityThread.java:3683)
03-02 15:51:27.457: WARN/System.err(618):     at java.lang.reflect.Method.invokeNative(Native Method)
03-02 15:51:27.519: WARN/System.err(618):     at java.lang.reflect.Method.invoke(Method.java:507)
03-02 15:51:27.527: WARN/System.err(618):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-02 15:51:27.547: WARN/System.err(618):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-02 15:51:27.547: WARN/System.err(618):     at dalvik.system.NativeStart.main(Native Method)

问题答案:

尝试在您的AndroidManifest.xml中添加“互联网”权限:

<uses-permission android:name="android.permission.INTERNET" />


 类似资料:
  • 问题内容: 我有以下活动: 我得到一个NPE,当我尝试调用的,我猜这是因为是一个独立的片段,我有作为之内: 但是,我不确定如何解决此问题,以便可以找到loginButton ID。我以前没有使用过片段,所以我意识到我可能正在使用它们/错误地实现了它们。包含在几个按钮,并没有什么,但一个。 问题答案: 从片段编写代码以初始化按钮,因为您的按钮进入片段布局而不是活动布局。 而从删除登录按钮相关的代码的

  • 我正在使用改造下载一些媒体文件,如视频,mp3,jpg,pdf。在我的应用程序中,当我想下载一个MP4格式的55MB的大文件时,Trere是一个问题。当我想下载这个文件时,我会遇到如下错误: 最后,这是我的createServiceFile方法: 如果你能帮助我,我真的很感激:)

  • 我试图将jBPM 5.4集成到现有的servlet中。 servlet在JBoss 7.1中运行良好,但在我添加一个与jBPM相关的API时,由于抛出异常而失败。(我使用了安装中的评估样本作为模板。)我向servlet的doPost()中添加了: 执行此语句后,将引发以下异常: 20:51:06394错误[org.apache.catalina.core.ContainerBase.[jboss.

  • 我有一个异步函数,我想同时测试成功和失败。函数成功时返回一个字符串,失败时抛出。我在测试失败上失败得很惨。下面是我的代码: 我通过注释失败的代码并在注释中添加结果来禁用 正如你所看到的,什么都不起作用。我相信我的测试几乎是第一个失败测试的Promises示例和最后一个失败测试的Async/Await示例的完全副本,但是没有一个可以工作。 我相信与Jest文档中的示例的不同之处在于,它们展示了如何测

  • 问题内容: 尝试添加另一个列表时抛出List.addAll 。 在循环中,我在做, 从文件中读取 supportType 。 但是第2行抛出一个,但是我无法确定为什么? 我要在列表中添加另一个列表,那么为什么不支持此操作? 问题答案: 返回一个固定大小的列表,该列表由数组支持,并且您不能向其中添加元素。 您可以创建一个可修改的列表以进行工作:

  • 我一直在安装Python 3的一系列基本包(Numpy等)与pip 3和一切都很好。然后我尝试安装tensorflow图形处理器,我得到了 我清除了python3pip并重新安装了它,这没有帮助。 编辑:我得到同样的错误,如果我只是运行在终端。 EDIT2:好的,我只是想说清楚,我不能用pip3来完成任何任务。运行会出现相同的错误。我也没有在假设的重复问题中找到任何解决方案。