dmewy 2009-09-04 17:12
浏览 303
已采纳

普通JAVA文件如何调用Servlet

因为要生成报表.
我这边会用quartz定时启动一个Java Class.
通过这个JAVA类去调用一个Servlet.因为AP SERVER有三台..所以我要制定只有一台去run我生成report的code..
所以必须要调用一个Servlet,因为需要request获取IP判断是哪台AP SERVER在request..

不知如何普通的java类中启动一个Servlet. 或者Struts的Action也可以..

如何新建一个HttpServletRequest对象呢?

[b]问题补充:[/b]

因为要生成报表.
我这边会用quartz定时启动一个Java Class.
通过这个JAVA类去调用一个Servlet.因为AP SERVER有三台..所以我要制定只有一台去run我生成report的code..
所以必须要调用一个Servlet,因为需要request获取IP判断是哪台AP SERVER在request..

不知如何普通的java类中启动一个Servlet. 或者Struts的Action也可以..

如何新建一个HttpServletRequest对象呢?


我使过

URL url = new URL("XXX"); 
URLConnection Urlconn = url.openConnection(); 
InputStream inResult = Urlconn.getInputStream(); 

 
这样去做.

奇怪的问题出现了.

在本机测试都是OK的..

在正式机刚开始用整包上线是没问题的(war).

后来不知道过了多久发现那个Servlet唤醒不起来了.奇怪.

意思就是说servlet的代码就没执行

期间有多次Replace Class的上线模式..没有整包发过..

个人怀疑是因为这样搞挂了servlet.

不知道这是为何?

app server : WAS5.1

不可能每次都停机上整包的. 每次都要申请,而且停机的话客户也不能使用.



 

  • 写回答

6条回答 默认 最新

  • Ryankay 2009-09-04 17:23
    关注

    楼主你思路有问题,你一个java普通类,都没有web环境,何来的request对象?再说你都不在同一服务器下,就算你传个request有什么意义?这里的request一定要是web容器下获得的request才有意义。

    实现你要的功能,你只需要发起一个http请求即可,如果用js,那么AJAX会很方便,如果你执意要用java,那么可以google:httpclient java。这个工具类能让你得到你想要的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?