URL issue with tomcat include project name

2019-01-24 10:58发布

问题:

I am using Eclipse for J2EE project... one device send request to my side and url like

http://myIP:myPort/corporationweb/Controller

/corporationweb/Controller is fixed we can't change it because it made on device

my project name in eclipse is "VirtualTest" but here tomcat include project name if i mapping any servlet, /corporationweb/Controller URL like

http://localhost:8080/VirtualTest/corporationweb/Controller

I need page open without change project name

  • any i can mapping servlet directly so URL like http://localhost:8080/corporationweb/Controller
  • any URL rewriting technique..
  • make as default application for my project

回答1:

Rightclick project in Eclipse, choose Properties, go to Web Project Settings and set Context root to /.

This will let Eclipse deploy the project on context root instead of project name (which is the default).


Unrelated to the concrete problem, you really need to ensure that your application is written the way so that it does not care on which context path the application is been deployed. This is namely a server specific setting which is not controllable from inside your project. Make use of HttpServletRequest#getContextPath() the smart way.



回答2:

If you want to make "VirtualTest" as default application for your project, and not showing this name in URL, you can simply change project name to "root", which is a special name for the default application.
Your URL will be like:

http://localhost:8080/corporationweb/Controller


回答3:

If you are using Eclipse. Go to server and remove the unwanted project which are Synchronized, then restart your server. Worked for me