Java 从命令行更新web球体中的ear

Java 从命令行更新web球体中的ear,java,eclipse,websphere,websphere-8,Java,Eclipse,Websphere,Websphere 8,我已经开发了一个JavaEAR,通过使用eclipse中的publish按钮,我将它从本地eclipse部署到本地WebSphere8.5。当我试图从命令行部署我的ear时,我在尝试访问网页后遇到了一个错误 我从公共线路更新耳朵,如下所示: ${was.dir}/profiles/${was.profile}/bin/wsadmin.sh-lang jython-username${was.username}-password${was.password}-c AdminApplication.

我已经开发了一个JavaEAR,通过使用eclipse中的publish按钮,我将它从本地eclipse部署到本地WebSphere8.5。当我试图从命令行部署我的ear时,我在尝试访问网页后遇到了一个错误

我从公共线路更新耳朵,如下所示: ${was.dir}/profiles/${was.profile}/bin/wsadmin.sh-lang jython-username${was.username}-password${was.password}-c AdminApplication.updateApplicationUsingDefaultMerge('${was.app.name},'${build.dir}/${ear.name}'))

部署成功,但当我通过web浏览器访问我的应用程序时,会收到以下消息,而不是看到我的应用程序:

错误404:com.ibm.ws.webcontainer.servlet.exception.NoTargetForURIException:未为uri配置目标servlet:/ww/index.html

我已经通过websphere的web管理界面在没有任何配置的情况下更新了ear,从而验证了ear是否正常


我做错了什么,或者需要执行哪些额外步骤才能成功更新我的ear?

您使用了错误的命令。您应该使用如下内容:

AdminApp.update('myapp','app','[-操作更新-内容 MyApp.ear-noprecompilejsp-installed.ear.destination C:\WAS\MyApp -NodeDistributeAPP-UseMataFromBinary-nodeployejb-CreateMBansforResources-noreloadEnabled-nodeployws-validateinstall warn-noprocessEmbeddedConfig-filepermission..dll=755#…so=755#…a=755#…sl=755 -noallowDispatchRemoteInclude-noallowServiceRemoteInclude-asyncRequestDispatchType已禁用-nouseAutoLink-noenableClientModule-clientMode隔离-novalidateSchema-MapModulesToServers[[MyApp MyApp.war,WEB-INF/WEB.xml WebSphere:cell=Node02Cell,Node02=Node02,server=server1]]”)

此外,在WebSphereApplicationServer中,您可以记录通过管理控制台发出的每个命令

步骤

  • 使用管理用户(例如wasadmin)登录到管理控制台
  • 单击“系统管理”->“控制台首选项”
  • 选中“启用命令辅助通知”和“记录命令辅助命令”
  • 单击应用按钮保存更改
  • 您可以在管理控制台右上方的HelpPortlet中看到命令:


    如果选中“Log command assistance commands”,您还可以在日志文件“
    \profiles\\logs\server1\commandAssistanceJythonCommands.Log

    中看到jython命令,我不确定使用DefaultMerge的
    更新应用程序与使用
    更新
    (),但别忘了您还必须
    AdminConfig.save()
    完成后。

    该路径中应该有四个w吗?不管怎样,根据描述很难判断。它似乎找不到您试图访问的url。您正在使用的url是什么?您试图访问的ear中的web应用程序的配置上下文根是什么?我知道它找不到应用程序。我要寻找的是更新现有ear的正确方法,而命令AdminApplication.updateApplicationUsingDefaultMerge似乎还不够。感谢您抽出时间回答。