1 一次发布是必须要手动去发布的,后面的改动可以是自动更新到tomcat中的
myeclipse上面有一个“Deploy Myeclipse J2EE Project to Server...”按钮,将你需要发布的项目发布到指定的tomcat下面就可以了。
2 不需要手动发布也是可以的但是你在wepapps下面同样看不到项目的,就是修改tomcat的配置文件server.xml中Context的docBase的路径。
追问:
改成怎么样的
追答:
建议你还是用第一种方法手动部署一次
如果要改的话,改成:
访问:
ip/应用名
1 一次发布是必须要手动去发布的,后面的改动可以是自动更新到tomcat中的
myeclipse上面有一个“Deploy Myeclipse J2EE Project to Server...”按钮,将你需要发布的项目发布到指定的tomcat下面就可以了。
2 不需要手动发布也是可以的但是你在wepapps下面同样看不到项目的,就是修改tomcat的配置文件server.xml中Context的docBase的路径。
现在需要在webproject建立一个socket服务器,在tomcat启动时初始化这个socket服务类。现在写了一个类SocketServer,在web.xml中给这个类加了listener,在tomcat启动时这个类被初始化了但是因为SocketServer类中一直在等待socket客户端连接,所以tomcat初始化SocketServer类时就卡在那了,不继续启用应用了。另外个问题是,写了个测试socket连接类,请求都可以被接到,但是当输出socket客户端的InputStreamReader流中数据时就提示Socket is closed被关闭。
SocketServer.java
public class SocketServer {
private int port=8000;
private ServerSocket serverSocket;
public SocketServer() throws IOException {
System.out.println("启动服务!!!!!!!!!!!!!!!!");
//连接请求队列的长度
serverSocket = new ServerSocket(port,10000);
serverSocket.setSoTimeout(30000);
while (true) {
Socket socket=null;
try {
//从连接请求队列中取出一个
socket = serverSocket.accept();
//连接
System.out.println("New connection accepted " +
socket.getInetAddress() + ":" +socket.getPort());
new ServerThread (socket).start();
}catch (IOException e) {
e.printStackTrace();
}finally {
try{
if(socket!=null){
socket.close();
}
}catch (IOException e){
e.printStackTrace();
}
}
}
}
}
ServerThread.java
public class ServerThread extends Thread {
private Socket s;
ServerThread (Socket s){
this.s = s;
}
public void run (){
BufferedReader br = null;
PrintWriter pw = null;
try{
InputStreamReader isr;
isr = new InputStreamReader (s.getInputStream ());
br = new BufferedReader (isr);
pw = new PrintWriter (s.getOutputStream (), true);
String cmd = br.readLine ();
}catch (Exception e) {
e.printStackTrace();
}finally{
try {
if (br != null){
br.close ();
}
if (pw != null){
pw.close ();
}
if (s != null){
s.close ();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
测试类
public class Test {
public static void main(String args[])throws Exception{
final int length=10;
String host="127.0.0.1";
int port=8000;
Socket[] sockets=new Socket[length];
for(int i=0; i
sockets[i]=new Socket(host, port);
PrintWriter pw = new PrintWriter (sockets[i].getOutputStream (), true);
pw.write("测试"+i);
pw.flush();
System.out.println("第"+i+"次连接成功");
}
Thread.sleep(300000);
for(int i=0;i
sockets[i].close(); //断开连接
}
}
}
把tomcat server选中Enable。再redeploy试试。
需要配置myeclipse中的tomcat将工程部署到tomcat中去