社区
Java EE
帖子详情
在配置好的服务中的写的诸如System.out.print 的信息都输出到什么地方去了?
huangry
2003-04-05 11:54:11
我在配置好的服务中的写的诸如System.out.print 的信息都输出到什么地方去了?
没有这些输出的信息,我该怎么调试啊,真是头大
...全文
374
21
打赏
收藏
在配置好的服务中的写的诸如System.out.print 的信息都输出到什么地方去了?
我在配置好的服务中的写的诸如System.out.print 的信息都输出到什么地方去了? 没有这些输出的信息,我该怎么调试啊,真是头大
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huangry
2003-04-05
打赏
举报
回复
可是那个 Tomcat启动时候弹出的那个 Console Window 一会儿就没有了呀 :(
我到什么地方去找这个窗口
顺便问一下, 为什么说那个东东会省掉很多麻烦?
还有关于你说的调试的问题, 我就是对方法本地测试过后觉得没问题 , 才配置服务的,可是他在作为服务运行的时候的执行的结果不是我所期望的 , 所以我很郁闷,想知道到底发生了什么事情, 我再自己试试看,实在不行我再麻烦你 :(
Norwaywoods
2003-04-05
打赏
举报
回复
To huangry(凯撒):
赶快去下一个axis1.1rc2,可以帮你省很多麻烦,不过跟你问的问题无关。
你的问题:
你运行Tomcat的时候,不会弹出一个Console window吗?应该就是输出到那里去了!
你仔细看看你的System.out.println();执行到了没有。况且要调试服务端,也不必如此呀!你直接在你的Service类里面写个main函数,然后,在里面就可以一个一个的对你暴露出的方法进行单元测试了。
huangry
2003-04-05
打赏
举报
回复
我看了log文件,可是找不到我要的东西嘛,都是服务配置的信息
huangry
2003-04-05
打赏
举报
回复
Tomcat4.1.8 + axis 1.0 +
huangry
2003-04-05
打赏
举报
回复
能告诉我怎么看吗?
我用的就是Tomcat, 在什么地方?
yinxp2
2003-04-05
打赏
举报
回复
像tomcat,输出到了控制台
Jrun,输出到了log文件中。
像你这种情况,估计应该在log文件中
仔细查查
huangry
2003-04-05
打赏
举报
回复
茅塞顿开!!! 实在是太崇拜你了! ;)
Norwaywoods
2003-04-05
打赏
举报
回复
上面说的“不再是通用的Object类型,而直接就是你指定的类型。”是不对的。我把我自己写的Soap Engine的特性当成Axis的特性了,呵呵!对不起!
补充一点:
有些Soap引擎服务端在返回值的时候,并不是自描述的,也就是说不是下面这样的:
<result xsi:type="xsd:string">Hello!</result>
而是:
<result>Hello, I'm a string!</result>
因此,如果让你的Client端的Soap引擎来序列化它呢?她都没有说自己是什么类型。这个时候只有程序员自己主动指定returnType的类型了,这也是setReturnType()存在的意义了。在这个角度上来说有setReturnType方法可以增强Axis的互操作性(也就是兼容性)。
Norwaywoods
2003-04-05
打赏
举报
回复
是这样的setReturnType(),addParameter()在某些特定的环境下,还是有用的。如果你直接使用invoke(new Object[] { str }) 这样来call远程的方法,你发出去的Soap请求的参数的就总是这样的:
<arg0 xsi:type="xsd:string">Hello!</arg0>
参数的名字是没有意义的:arg0。如果你指定了parameter和returnType:
call.addParameter("testParam", org.apache.axis.Constants.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.setReturnType(org.apache.axis.Constants.XSD_STRING);
那么发出的soap请求参数如下:
<testParam xsi:type="xsd:string">Hello!</testParam>
并且invoke返回的不再是通用的Object类型,而直接就是你指定的类型。
也就是:
String ret = call.invoke();
huangry
2003-04-05
打赏
举报
回复
是我调用的时候错了 :( 这个错误:
No parameters specified to the Call object! You must call addParameter() for all parameters if you have called setReturnType().
于是我就把我调用setReturnType()的那一句删掉, 就好了, 进程等在那里了 :-0
可是我对这几个函数的作用还是不明白setReturnType(),addParameter(), 既然我直接这样调用invoke(new Object[] { str }) 就可以了,那那几个函数还要来干嘛呢?能告诉我吗? 我感到很疑惑
huangry
2003-04-05
打赏
举报
回复
哦, 我终于找到了 使我自己不小心把那个Exception覆盖掉了, 所以看不出来 谢谢 现在总算知道什么错了
Norwaywoods
2003-04-05
打赏
举报
回复
如果你设为Application ,当然不用call.setMaintanSession()了。你这样说也没用。你还是贴程序吧!
huangry
2003-04-05
打赏
举报
回复
这几个我都考虑到过了 , flag的初始值是false, 这个方法由服务端触发,但是我还没能有机会去运行那个触发的程序, 客户端已经结束传输了 :(
scope我设为了Application , 难道这个还需要调用call.setMaintanSession()吗?这句话我倒是没加
Norwaywoods
2003-04-05
打赏
举报
回复
唉~~~~。你这样讲很难说的明白的。可能得原因很多。你的flag的初始值是什么?有什么方法改变这个flag,这个方法是由服务端触发,还是由客户端触发。就是说谁来改变flag的值。可能,你必须把scope置为session.
huangry
2003-04-05
打赏
举报
回复
现在我已经有了这个console窗口了 ,可是那个窗口里还是没有出现任何信息阿
huangry
2003-04-05
打赏
举报
回复
好吧, 我还是先放弃自己调试了研究这个东东的念头,先问问你
我现在想要做的东西是这样的, 我的客户端提交一个请求, 服务端根据这个请求回送一个数据段, 但是回送这个数据段要先判断一个标志位比如叫做boolean TransferPermitted, 只有在这个标志为是true的时候, 服务器端才是允许发出这个数据段的, 否则服务端一直循环 并且sleep() , 直到这个标志位被设为true才跳出循环 返回那个数据
while( true){
if(flag) return data;
Thread.sleep(100)
}
就是这个样子
但是我在运行的时候,他根本就不等待, 直接就返回了个空值, 我实在是不明白怎么回事 :( 所以我才要调试服务器端,看看到底它运行到了什么地方,
Norwaywoods
2003-04-05
打赏
举报
回复
对,如果象george_yingjun(竹子)说的那样,你就看不到输出了。所以,你必须取消WINDOW的自启动服务了,改为直接打开Tomcat.
george_yingjun
2003-04-05
打赏
举报
回复
TOMCAT窗口一启动就没有的问题,
可能在于,
你把它作为WINDOW的自启动服务了。
看看控制器-》管理工具-》SERVICE吧。
huangry
2003-04-05
打赏
举报
回复
之前我可肯定是可以的, localhost:8080 我经常进去的 因为我懒得打那句配置服务的话,所以总是在配置窗口中reload Axis。 那时候,肯定是没有tomcat的console window 的
huangry
2003-04-05
打赏
举报
回复
我安装了axis1_1 rc2之后, tomcat运行时居然有那个dos窗口了,真是奇怪
可是那个窗口里面还是没有任何东西输出 :(
加载更多回复(1)
[萌新必看]TomCat的WebAPP经常遇到的问题,诸如servelt404和SysTem.out.
pr
int
无法在控制台
输出
等。
JAVAWEB常见问题之servelt404和System.out.
pr
int
无法在控制台
输出
Java基础之System.out.
pr
int
ln()解析
我初学Java时,最疑惑的一点就是为什么
pr
int
()方法前面还要来个System.out。时至今日(原谅我当初没怎么好奇这个问题),去查了下API文档。如下:1.关于System,API文档如下: System是lang包下的一个类。至于out,...
Log4j2 在 Windows 下导致 System.out 失效
此问题已经在 Log4j2 2.3 里面修复,详见 ...今天在 Windows 下调试这几天
写
的一个命令行程序,发现在 Log4j2 在一种情况下会在 Windows 下会出现 System.out.
pr
int
ln("XXXX") 无法...
【Java】System.out.flush()不起作用/没有效果
众所周知,一般高级语言的一般
输出
语句实际上都并不能保证将内容实时显示到标准
输出
(如C/++的
pr
int
f(),Python的
pr
int
(),等等等等),而是
写
入一个叫做缓冲区(一般称为buffer)的一段内存空间。输入有输入buffer...
Java调试的变迁:从System.out.
pr
int
ln到log4j,到logback, 到slf4j(1)
的确,在M$的大部分IDE都做得相当出色,包括像VJ++这样一直被Java程序员称为是“垃圾”的类库(记得以前在瀚海星云的Java版提有关VJ问题的人是有可能被封的,^_^),它的开发工具在调试上都相当容易。Java也有命令行...
Java EE
67,513
社区成员
225,879
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章