网络连接问题

gesanri gesanri 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
有人说j2me不支持数字域名?是这样吗?下面这个程序就是把某域名下的配置文件的内容打印在控制台,报错(注:我用的wtk2.5.2,我用nokia的s40 5th模拟器竟然报空指针异常):
java.lang.IllegalArgumentException: malformed URL
at com.sun.midp.io.HttpUrl.isIPv4Address(+88)
at com.sun.midp.io.HttpUrl.parseAfterScheme(+568)
at com.sun.midp.io.HttpUrl.<init>(+36)
at com.sun.midp.io.j2me.http.Protocol.connect(+18)
。。。
程序本身没问题,我试过别的域名,可以正常打印出内容,这个域名本身也应该没错(以前这个项目做过c#版的就用这个域名,我现在做j2me版)这个问题该怎么解决?域名我又无法改变

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import java.io.*;

public class HttpTest extends MIDlet implements CommandListener{
private Command exit,start;
public static Display display;
private Form form;

public HttpTest() {
display = Display.getDisplay(this);
exit = new Command("Exit",Command.EXIT,1);
start = new Command("Start",Command.EXIT,1);
form = new Form("Customer Ranking");
form.addCommand(exit);
form.addCommand(start);
form.setCommandListener(this);
}

protected void startApp() throws MIDletStateChangeException {
display.setCurrent(form);
}

protected void pauseApp() {

}

protected void destroyApp(boolean arg0) {

}


public void commandAction(Command command,Displayable displayable){
if(command == exit){
destroyApp(false);
notifyDestroyed();
}
else if(command == start){
ThreadTest2 t = new ThreadTest2();
t.start();
}
}
}

class ThreadTest2 extends Thread{
public void run(){
StreamConnection connection = null;
InputStream in = null;
StringBuffer buffer = new StringBuffer();
try{

StringBuffer sb = new StringBuffer();
sb.append("http://weather.infodo.9251.com/getresource/getresource.aspx?");
sb.append("city=");
sb.append("北京");
sb.append("&");
sb.append("dtype=");
sb.append("");
sb.append("&");
sb.append("imei=");
sb.append("");
sb.append("&");
sb.append("softe=");
sb.append("v2.0");
sb.append("&");
sb.append("mobile=");
sb.append("");
sb.append("&");
sb.append("syse=");
sb.append("");
sb.append("&");
sb.append("username=");
sb.append("");
sb.append("&");
sb.append("email=");
sb.append("");
sb.append("&");
sb.append("settel=");
sb.append("");
sb.append("&");
sb.append("citylist=");
sb.append("北京;上海;重庆;");

connection = (StreamConnection)Connector.open(sb.toString());
in = connection.openInputStream();
int ch;
while((ch = in.read()) != -1){
if(ch != '\n'){
buffer.append((char)ch);
}
else{
String line = new String(buffer.toString());

buffer = new StringBuffer();
System.out.println(line);
}
}
}catch(IOException error){
Alert alert = new Alert("Error","Cannot connect",null,null);
alert.setTimeout(Alert.FOREVER);
alert.setType(AlertType.ERROR);
HttpExample.display.setCurrent(alert);
}catch(Exception e){
e.printStackTrace();
}

}
}

...全文

相关推荐

网络连接问题解决[源码]

本文详细解析了网络连接中断的常见问题,尤其是提示“暂时无法连接,或它已经永久性地移动到了新网址”的情况。文章首先分析了问题的可能原因,包括DNS解析问题、网络缓存故障、TCP/IP协议栈损坏、Winsock组件异常以及手动网络配置冲突。接着,提供了详细的解决步骤,如重置DNS、清理网络缓存、重置TCP/IP和Winsock,并检查网络配置。此外,文章还深入探讨了DNS解析、TCP/IP协议栈和Winsock的技术原理,并给出了高级建议,如更换DNS服务器、检查网络适配器和驱动以及排查路由器问题。通过这些步骤和原理分析,读者可以有效解决网络连接问题。

redis7keeper

VMware Linux网络连接问题及解决方案

如题,虚拟机连不上网络的时候,可以考虑这个方法,应该是通用的

GuJJ2025

怎么解决网络连接的问题

当Linux系统中的网络连接出现异常时,这确实让人感到棘手。 下载方式:https://pan.quark.cn/s/f46c4e923940 不过本指南针对常见问题提供了实用的解决方案,希望这些信息对你有所帮助。

dashi00258

Ubuntu网络连接问题解决[项目代码]

本文详细介绍了Ubuntu系统中无网络连接或无网络标识的常见问题及其解决方案。作者首先列举了可能导致问题的四个原因:硬件故障、驱动问题、系统设置错误和网络服务问题。接着,提供了具体的诊断方法和示例代码,如检查物理连接、驱动程序状态、网络配置文件和网络服务状态。最后,总结了三种有效的解决方案:重启网络服务、更新NetworkManager配置和调整VM虚拟机网络设置。文章还包含了作者的技术交流群信息,鼓励读者加入社群获取更多技术支持和资源。

隐层游民

虚拟机中网络连接问题的研究

在网络安全研究方面和网络运营商提供的服务中,虚拟机技术越来越起着重要位置。虚拟机的网络连接问题是首要解决的问题。在平时工作和研究中,人们对虚拟机网络连接概念模糊,相关的参数设置考虑不全,造成虚拟机找不到宿主机或宿主机找不到虚拟机,以至于虚拟机无法访问互联网。本文以虚拟机的三种网络连接模式为线索,论述不同连接模式下虚拟机与物理机在网络中的关系,以及虚拟机与宿主机的IP 地址、子网掩码、网关和DNS 服务器地址,阐明虚拟机网络连接参数设置方法。

weixin_38706747
评论 34
收藏 已收藏
分享
返回顶部
gesanri
J2ME 13,096 成员 26,491 内容