[英]to find out the class files associated with html page generated by web server
我有运行在我的机器上的Web应用程序(用Java编写),我需要找出与此Web服务器生成的html页面关联的类文件。如何找到这个?
If it is only for debugging purposes, put the following in JSP: 如果仅出于调试目的,请在JSP中放入以下内容:
<% Thread.dumpStack(); %>
You can find the compiled JSP classes in the /work
folder of the appserver in question. 您可以在有问题的appserver的
/work
文件夹中找到已编译的JSP类。
If it is for business purposes, then you really need to elaborate more about the problem / functional requirement for which you think that this is the solution. 如果是出于商业目的,那么您确实需要详细说明您认为这是解决方案的问题/功能要求。 Then we may come up with -much- better solutions.
然后,我们可能会提出更好的解决方案。 To the point, you need to pass this information from the business layer to the view layer yourself anyway.
到目前为止,您仍然需要自己将这些信息从业务层传递到视图层。
I have had some use of the following snippets when trying to figure out from what parts of a page is built, struts-tiles in particular can be a hassle. 当试图弄清页面的哪些部分被构建时,我使用了以下代码片段,特别是struts-tiles可能会很麻烦。
In the web.xml file of your webapp (at the very bottom), add the following: 在您的Web应用程序的web.xml文件(位于最底部)中,添加以下内容:
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<include-coda>/WEB-INF/myurl.jspf</include-coda>
</jsp-property-group>
</jsp-config>
And in the WEB-INF folder add a file called myurl.jspf with the following content: 然后在WEB-INF文件夹中添加一个名为myurl.jspf的文件,其内容如下:
<%=request.getServletPath()%><br>
<%
String name = this.getClass().getName();
String INF = "INF";
int pos = name.indexOf("INF");
if(pos > -1){
name = name.substring(pos + INF.length());
name = name.replaceAll("\\.", "/");
name = name.replaceAll("\\_", ".");
}
out.println(name);
%>
I know this is hack and the page name will not be exactly the printed, but it will give you a hint of where to look. 我知道这是hack,页面名称不会完全打印出来,但是会提示您在哪里查找。
When you have the page name (part) it is a lot easier to look in configuration files for Spring, Struts or similar frameworks for the class/controller. 当拥有页面名称(部分)时,查找Spring,Struts或类/控制器的类似框架的配置文件会容易得多。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.