java - 反射(reflect)重构变化(Java -> JSP)

标签 java eclipse jsp refactoring intellij-idea

糟糕,这种事又发生了。

今天,当我将代码从一个包移动到另一个包时,我做了一些重构,但忘记更新 JSP 的导入语句。单元测试通过了通常的 SUCCESS 消息,代码编译时没有错误或警告,但在运行时有一个很大的异常在等着我。

使用 Eclipse 或 IntelliJ IDEA,您如何处理对 Java 代码进行的重构更改未反射(reflect)在 JSP 中的情况?我可以做些什么来强制执行此操作吗?

最佳答案

好吧,如果您遵循最佳实践,那么您的 JSP 中将不会有任何 scriptlet 代码,因此也不会出现任何 import 语句。如果您重命名 JSP EL 表达式中使用的 getter(例如),您仍然需要重构 JSP,但类名的更改不会产生任何影响。

我会将 JSP 编译集成到您的构建过程中(至少在持续集成服务器上),以检测 JSP 中的此类问题。这是how to do it with Tomcat 。您可以使用 Selenium 或 HtmlUnit 集成测试来检查 JSP 的执行是否没有问题。

关于java - 反射(reflect)重构变化(Java -> JSP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13653849/

相关文章:

java - 通过ArrayLists排序,代码问题

eclipse - Indigo Maven 项目生成器

java - List.get(0) 在 Eclipse 的表达式窗口中工作正常,但是当我运行代码时它会抛出 classcastException

java - 自注入(inject)原型(prototype)bean - 循环引用

java - eclipse中出现404错误

java - Maven - 查看依赖树而不构建项目

java - Eclipse 仅编译引用的类(如何设置 Intellij 来执行相同的操作)

java - JSP:多个查询和生成键的问题

java - 如何使用普通 JDBC 处理 J2EE 1.4 中的事务

java - 如何知道一个 JSP 文件是否被另一个文件包含?