首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在websphere wsadmin jython中获得正确的错误消息?

如何在websphere wsadmin jython中获得正确的错误消息?
EN

Stack Overflow用户
提问于 2014-01-01 12:50:52
回答 1查看 5.4K关注 0票数 0

我需要代码,它可以处理异常并继续这个过程。但是,错误处理例程似乎无法获得正确的错误消息:

毫无例外地处理:

代码语言:javascript
复制
wsadmin>AdminControl.testConnection (SomeDataSource)

WAS7015E: Exception Running command: "AdminControl.testConnection (SomeDataSource)"
com.ibm.websphere.management.exception.AdminException
javax.management.MBeanException
java.lang.ClassNotFoundException: java.lang.ClassNotFoundException: DSRA8000E: Java archive (JAR) or compressed files do not exist in the path or the required access is not allowed.  Path: /ojdbc6.jar

异常处理:

代码语言:javascript
复制
wsadmin>try:
wsadmin>  AdminControl.testConnection (SomeDataSource)
wsadmin>except:
wsadmin>  typ,val,tb = sys.exc_info()
wsadmin>  print typ
wsadmin>  print val
wsadmin>  print tb

com.ibm.ws.scripting.ScriptingException
com.ibm.ws.scripting.ScriptingException: com.ibm.websphere.management.exception.AdminException: javax.management.MBeanException: Exception thrown in RequiredModelMBean while trying to invoke operation testConnection
<traceback object at -1765990050>

另一个版本(虽然我认为应该有更聪明的方法来执行它)

代码语言:javascript
复制
wsadmin>fname='${Server log folder}\SystemOut.log'
wsadmin>file=open(fname,'r')
wsadmin>junk=file.readlines()
wsadmin>file.seek(-1,1)
wsadmin>try:
wsadmin>  AdminControl.testConnection (SomeDataSource)
wsadmin>except:
wsadmin>  err='yes'
wsadmin>
wsadmin>file.seek(1,1)
wsadmin>if err='yes':
wsadmin>  msg=file.readlines()
wsadmin>  print 'Error: '.join(msg)

似乎我终于得到了我想要的东西,尽管它跳过了整个错误处理,但是直接获得了错误日志的内容。

EN

回答 1

Stack Overflow用户

发布于 2014-01-14 20:22:14

我不知道为什么在wsadmin jython中会发生这种情况,但是您可以尝试这样做:

代码语言:javascript
复制
    try:
     SomeDataSource = "Test"
     AdminControl.testConnection (SomeDataSource)
    except:
     typ,val,tb = sys.exc_info()[1]
     print typ
     print val
     print tb

结果如下:

代码语言:javascript
复制
    wsadmin>try:
    wsadmin> SomeDataSource = "Test"
    wsadmin> AdminControl.testConnection (SomeDataSource)
    wsadmin>except:
    wsadmin> typ,val,tb = sys.exc_info()[1]
    wsadmin> print typ
    wsadmin> print val
    wsadmin> print tb
    wsadmin>
    WASX7015E: Exception running command: ""; exception information:
     com.ibm.ws.scripting.ScriptingException: AdminControl service not available

注sys.exc_info()1

问候

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20868819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档