NetBeans 7.0.1: Access to Tomcat server has not been authorized

Roshan picture Roshan · Jun 17, 2013 · Viewed 53.4k times · Source

i am a beginner, just started with JSP and am stuck at the starting. please help me out. i have downloaded catalina.bat and setclasspath.bat in there proper location /tomcat/bin/ but still getting the error of authorization. i have seen a similar post and edited my tomcat-users.xml with this line <user username="root" password="1234" roles="manager-script"/>

but still NOT able to run it successfully.

See the server log for details.
    at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:232)
    at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.java:106)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
    at sun.reflect.GeneratedMethodAccessor65.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at org.apache.tools.ant.Task.perform(Task.java:348)
    at org.apache.tools.ant.Target.execute(Target.java:390)
    at org.apache.tools.ant.Target.performTasks(Target.java:411)
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
    at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:284)
    at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:539)
    at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)
Caused by: java.lang.IllegalStateException: Access to Tomcat server has not been authorized. Set the correct username and password with the "manager-script" role in the Tomcat customizer in the Server Manager.
    at org.netbeans.modules.tomcat5.TomcatManagerImpl.list(TomcatManagerImpl.java:398)
    at org.netbeans.modules.tomcat5.TomcatManager.modules(TomcatManager.java:639)
    at org.netbeans.modules.tomcat5.TomcatManager.getAvailableModules(TomcatManager.java:450)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.getAvailableTMIDsMap(TargetServer.java:417)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:372)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:321)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:318)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.processLastTargetModules(TargetServer.java:439)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.init(TargetServer.java:174)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.deploy(TargetServer.java:579)
    at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:197)
    ... 16 more
Caused by: org.netbeans.modules.tomcat5.AuthorizationException
    at org.netbeans.modules.tomcat5.TomcatManagerImpl.list(TomcatManagerImpl.java:399)
    ... 26 more
BUILD FAILED (total time: 11 seconds)

any help on this would be saviour for me, i am pretty much naive on this. thanx in advance :)

Answer

Jack Harkness picture Jack Harkness · Jun 17, 2013

The same server error I had for which I changed the /conf/tomcat-users.xml

STEP 1:

Changing tomcat-users.xml

<tomcat-users>
    <role rolename="tomcat"/>
    <role rolename="role1"/>
    <role rolename="manager-gui"/>
    <user password="tomcat" roles="tomcat,manager-gui" username="tomcat"/>
    <user password="tomcat" roles="tomcat,role1" username="both"/>
    <user password="tomcat" roles="role1" username="role1"/>
    <user password="pass" roles="manager-script,admin" username="me"/>
</tomcat-users>

I added two roles manager-script and admin.

You can find further references to roles at Configure Manager

STEP 2:

After adding the role you will need to add those credentials to Netbeans server configuration.

  1. Go to Window -> Services
  2. Select Servers.

Select your tomcat instance and Right click to see Properties.

Now select Connection Tab. Enter the "username" as me and "password" as pass.