相关疑难解决方法(0)

Eclipse webtools项目(WTP)及其性能/质量

我们公司几年来一直在使用eclipse(我们从0.7版开始使用WTP)

我目前正在使用WTP 3.2.3评估eclipse 3.6.2,它应该用WTP 3.0.4取代eclipse 3.4.2作为我们的主要IDE.

而且我不得不再次对性能问题感到非常失望:
WTP 3.2.3似乎比3.0.4慢得多.
事实上,我真的很想知道为什么每次发布时WTP会变慢.

我们的一个应用程序(动态Web项目)包含大约4000个java类和700个jsps/jsp片段.我们只需要基本的WTP功能来开发jsps,xmls和xsd.我们不需要像Dali那样的高级功能(JPA工具真的应该由webtools项目覆盖吗?),Libra或者首先是一个可视化的xml编辑器.

另一个有趣的观点是,WTP似乎会降低整个IDE的速度.SWT在几秒钟内是非反应性的,cpu使用率非常高(特别是在构建发生之后 - 如果你查看系统作业,几个jsp/javascript索引器正在工作几分钟,即使所有WTP构建验证器已被禁用),打开新文件较慢,浏览项目等.

这在包含仅一个核心cpu的旧机器上尤为明显.

最糟糕的是,我觉得WTP开发团队并不关心性能 (例如,查看http://wiki.eclipse.org/WTP_Performance_Tests页面 - 最后一次更新发生在2008年).

bug报告和关于向的基本特征表现新闻组帖子(如JSP编辑/确认)一段时间后,往往被忽视或关闭,一些例子:在这里,这里,这里.

Quo vadis,WTP?


请不要误会我的意思:

我不想责怪WTP.
事实上,我相信WTP是一个由才华横溢的团队开发的优秀开源项目.
但很明显,该项目的质量保证存在问题,特别是在影响可用性和用户接受度的性能方面.

我只是想指出,团队应该首先关注对大多数用户至关重要的事情,然后再努力实现超级功能.

我的问题

  • 您对WTP的体验是什么,尤其是最新版本?
  • 你能证实或反驳我的意见吗?
  • 还有更好的选择吗?
  • 你有没有切换到WTP,为什么?
  • 您是否有一些最佳实践来加快速度,特别是像我们这样的中高端?

UPDATE

我想对这个问题进行更新,以反映当前的答案并总结当前的结果:

  • 许多用户或多或少抱怨同样的问题,所以我认为这些问题已得到确认.
    顺便说一句,这个问题也在theserverside.com的新闻帖中提到,附加评论.

  • 负责任的WTP项目负责人nitind在WTP的现状上发表了一篇值得一提的文章,我想引用一句:
    "简单的事实是,我们不会花太多时间在性能测试上,因为我们缺乏这方面的资源."
    "当然,我们希望积极主动,而不是反应,但我们倾向于首先将时间分配给功能性问题."

所以这个问题变成了一些社区对WTP团队的公开信:

Dear WTP team,

it's obvious that WTP …
Run Code Online (Sandbox Code Playgroud)

java eclipse ide jsp eclipse-wtp

54
推荐指数
2
解决办法
1万
查看次数

如何在Spring MVC应用程序中显示JSP中属性文件的值

我正在app-servlet.xml使用这样的bean 设置我的属性:

    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
            <property name="location" value="/WEB-INF/my.properties"></property>
    </bean>
Run Code Online (Sandbox Code Playgroud)

大多数时候我访问控制器或其他类中的属性,如下所示:

@Value("${dbtype}")
public String dbType;
Run Code Online (Sandbox Code Playgroud)

但是,如果我想在JSP文件中使用属性并绕过控制器,该怎么办?含义我不希望值类型作为模型属性从控制器传递到JSP.

有没有办法直接在jsp中访问属性?

java spring jsp spring-mvc

18
推荐指数
3
解决办法
6万
查看次数

是否有一种优雅的方式将spring托管bean注入java自定义/简单标记

我有一堆使用spring托管bean的java自定义标签..由于我无法找到注入自定义标记的方法,我创建了一个帮助类,为所有spring bean对象提供静态方法"getTheObjectINeedBean()"需要..我根本不喜欢这种方法.

我真的希望能够将spring托管bean注入自定义标记

有办法吗?就我的研究而言,我知道没有办法做到这一点,因为自定义标签是容器管理的

谢谢,

比利

java spring jstl inversion-of-control

11
推荐指数
2
解决办法
7240
查看次数

Spring MVC和自定义标签

我想在spring-mvc应用程序中的自定义taglibs中使用spring-beans.原因TagLib-Instances不是由spring实例化的,我不能使用dependnecy-injection.

我的下一个想法是通过拦截器将spring-context添加到请求中,并从tag-class中的请求中获取它.

有没有更好的方法在taglibs中使用spring?春天有什么东西可以随时使用吗?如果spring-mvc中还没有customtag-support,是否有办法用依赖项填充现有对象?

public class MyTag extends TagSupport {
  @Autowired 
  private MyObject object;

  public void setMyObject(MyObject myObject) {
    this.myObject = myObject;
  }

  public int doEndTag() {
    ApplicationContext context = request.getAttribute("context");
    context.populate(this);

    return object.doStuff();
  }
}
Run Code Online (Sandbox Code Playgroud)

java spring-mvc taglib

6
推荐指数
1
解决办法
7240
查看次数

在 web.xml 中将 BasicDataSource 配置为 bean

我正在尝试将 org.apache.commons.dbcp.BasicDataSource 配置为使用 tomcat 6 的 tomcat 项目下 web.xml 中的 bean。(它是 red5 和 tomcat,我们可以忽略主服务器实际上是 red5,因为我实际上运行的是 jsp 5080端口下的文件,不要使用RTMP协议直接连接到red5)

我的 web.xml:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/  j2ee/web-app_2_4.xsd" 
version="2.4"> 

<display-name>gamesisland-login-red5</display-name>

<context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>/[myapp]</param-value>
</context-param>

<listener>
    <listener-class>org.red5.logging.ContextLoggingListener</listener-class>
</listener>

<filter>
    <filter-name>LoggerContextFilter</filter-name>
    <filter-class>org.red5.logging.LoggerContextFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>LoggerContextFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<servlet>
    <servlet-name>rtmpt</servlet-name>
    <servlet-class>org.red5.server.net.rtmpt.RTMPTServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>rtmpt</servlet-name>
    <url-pattern>/fcs/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>rtmpt</servlet-name>
    <url-pattern>/open/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>rtmpt</servlet-name>
    <url-pattern>/close/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>rtmpt</servlet-name>
    <url-pattern>/send/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>rtmpt</servlet-name>
    <url-pattern>/idle/*</url-pattern>
</servlet-mapping>

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Forbidden</web-resource-name>
        <url-pattern>/streams/*</url-pattern>
    </web-resource-collection>
    <auth-constraint/>
</security-constraint>

<bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> …
Run Code Online (Sandbox Code Playgroud)

spring tomcat web.xml javabeans jakarta-ee

0
推荐指数
1
解决办法
2万
查看次数