java中开启tomcat同时开启socket,并且socket只建立一次,一次建立,终生受用,因为socket客户端是固定的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中开启tomcat同时开启socket,并且socket只建立一次,一次建立,终生受用,因为socket客户端是固定的相关的知识,希望对你有一定的参考价值。

手机以http .action的请求给javaweb服务器 ,服务器收到信息后要把信息发给第三台电脑,使用socket。目前存在问题是,web服务器启动socket也同时建立了,但是当想用已经建立好的socket对象去把信息发送给第三台电脑时,socket对象是空的。纠结了一个星期,求大神帮忙。

参考技术A 1 一次发布是必须要手动去发布的,后面的改动可以是自动更新到tomcat中的
myeclipse上面有一个“Deploy Myeclipse J2EE Project to Server...”按钮,将你需要发布的项目发布到指定的tomcat下面就可以了。
2 不需要手动发布也是可以的但是你在wepapps下面同样看不到项目的,就是修改tomcat的配置文件server.xml中Context的docBase的路径。
追问:
改成怎么样的

追答:
建议你还是用第一种方法手动部署一次
如果要改的话,改成:
<Context path="应用名" docBase="你编译后项目的路径" debug="0" crosscontext="true" reloadable="true" ></Context>
访问:
ip/应用名

tomcat设置账号密码并开启远程操控(8.5以后版本不支持远程操控) 开启远程操控

1.进入服务器上tomcat文件夹/webapps/magager/META-INF/context.xml
用vim 进入编辑模式
2.吧里面Context标签下面的所有东西都注释 如下
<Context antiResourceLocking="false" privileged="true" >
<!--
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />
-->
</Context>
3.输入域名验证
设置账号密码
1.进入tomcat文件夹
输入 vim conf/tomcat-users.xml
2.按i进入编辑模式在<tomcat-users>标签里面加上
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="用户名" password="密码" roles="admin-gui,admin,manager-gui,manager,manager-script,manager-jmx,manager-status"/>
3.编辑完后按ESC之后输入:wq(保存并退出)
4.在tomat_home/conf/Catalina/localhost/下 添加manager.xml里面输入
<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager"> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" /> </Context>

以上是关于java中开启tomcat同时开启socket,并且socket只建立一次,一次建立,终生受用,因为socket客户端是固定的的主要内容,如果未能解决你的问题,请参考以下文章

tomcat开启远程调试

tomcat 开启远程debug

开启并设置tomcat的访问日志

如何在xmapp中开启tomcat

java ssm项目 如何在项目启动时 建立一个socket链接。并在项目中可以随时调用

vc ,socket,一个网络进程可以同时开启多个线程,而这每一个线程是否都可以拥有一个属于自已的端口号?