Ant Tomcat 7 Reload FileNotFoundException

2019-03-31 00:18发布

I'm trying to reload web application from ant. but I got error not found:

D:\project\triplelands\ocbcfilesending\src\com.ocbcmcd.monitoring\build.xml:90:
java.io.FileNotFoundException: http://localhost:8080/manager/reload?path=%2Fhello

I also try direct access: http://localhost:8080/manager/reload?path=/hello I got 404 error code from my browser:

My configuration is:

My Ant Script

<target name="deploy-realod" depends="deploy" description="Reload application in Tomcat">
       <reload url="${tomcat.manager.url}" username="${tomcat.manager.username}" password="${tomcat.manager.password}" path="/${name}" />
</target>

build.properties

appserver.home=C:/appserv/apache6
#for Tomcat 5 use $appserver.home}/server/lib
#for Tomcat 6 use $appserver.home}/lib
appserver.lib=${appserver.home}/lib

deploy.path=${appserver.home}/webapps
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=root
tomcat.manager.password=root

tomcat user configuration

<user name="root" password="root" roles="admin-gui,manager-gui,tomcat,role1" />

Thanks for advice

标签: java tomcat ant
3条回答
Luminary・发光体
2楼-- · 2019-03-31 00:48

I too ran into this issue, while moving a project I've been working on from Tomcat 6 to Tomcat 7. Essentially, there's been a change in the manager URL, where it's been split into several, the use of each depending on how you interface with it:

* /manager/html for the HTML GUI
* /manager/text for the text interface
* /manager/jmxproxy for the JMX proxy
* /manager/status for the status pages

In the case of ant, you want to use /manager/text. SO, you'll need to edit your build.properties file, like so:

tomcat.manager.url=http://localhost:8080/manager/text

Hope that helps!

查看更多
我想做一个坏孩纸
3楼-- · 2019-03-31 00:48

To get it working on Tomcat 7, you would need the following -

build.xml

<path id="catalina-ant-classpath">
    <!-- We need the Catalina jars for Tomcat -->
    <!--  * for other app servers - check the docs -->
    <fileset dir="${appserver.lib}">
        <include name="catalina-ant.jar"/>
        <include name="tomcat-coyote.jar"/>
        <include name="tomcat-util.jar"/>
        <include name="tomcat-juli.jar"/>
    </fileset>
</path>

build.properties

tomcat.manager.url=http://localhost:8080/manager/text
tomcat.manager.username=tomcat
tomcat.manager.password=s3cret

tomcat-users.xml

<user name="tomcat" password="s3cret" roles="manager-script"/>

cheers, alexi

查看更多
叛逆
4楼-- · 2019-03-31 00:49

tomcat user configuration in tomcat 7.0 should be like this:

<role rolename="tomcat"/>
<role rolename="manager"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="standard"/>
  <user username="admin" password="admin" roles="tomcat,manager,standard,manager-script,manager-gui"/>
</tomcat-users>
查看更多
登录 后发表回答