`
fangshun
  • 浏览: 8008 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

基于myfaces 1.1.x,seam 1.2 应用在websphere 6.1下的部署!

阅读更多
公司因为和IBM合作统一为客户提供websphere6.1的应用环境,所以让我很是恼火,有两点原因:
1.ws61只能完全支持j2ee1.4标准而不支持j2ee1.5,需要等待ws7.0出来才支持,虽然现在有ejb3的pack包,甚至传闻会出j2ee1.5pack,但是只是推荐开发环境使用(服了,开发环境我还用它),这样jstl,jsp,jsf的统一EL不能用了,jsf1.2规范不能用了,seam2.0不能用了,恼火!
2.我习惯使用myfaces1.1.5和tomahawk-1.1.6,都是基于jsf1.1规范,并使用seam1.2进行展现层管理!但是正常部署居然websphere6.1不兼容,更恼火!

不兼容有两个方面:
1.myfaces不兼容,因为ibm有自己的jsf-ibm实现,而且将此加入到了com.ibm.ws.webcontainer_2.0.0.jar当中,成了ibm websphere web环境的必须标准,呵呵,更狠!
2.seam和ibm的jsf实现不兼容,不兼容的地方是会在启动处抛出java.lang.ClassCastException: org.jboss.seam.jsf.SeamApplication11 incompatible with com.sun.faces.application.ApplicationImpl
seam的领头人gavin.king这样说:
Yes, they should not do that typecast, that is a bug in their JSF impl.
呵呵gavin说那是他们的一个bug。
那么也就是说使用ibm的jsf实现的项目是使用不了seam了,只能用myfaces实现和标准实现了!
废话了半天其实解决的方法很简单:
就是进入企业应用-》你部署的应用-》模块管理-》你的war-》更改类加载顺序的选择项,让你的war应用加载高于父环境的类加载。
重启你的应用,myfaces就可以正确使用了
但是这样做有两个问题:
1.ibm的jsf组件就不用想了。
2.和jsf扩展的框架比如seam就需要部署在war中启动,myfaces-api,myfaces-impl.jar, seam.jar,seam-ui.jar等就要放在WEB-INF/lib下面,那么使用ear方式部署的项目会非常难受!

参考文档:
myfaces部署:http://wiki.apache.org/myfaces/Websphere_Installation
jboss seam bug:http://www.jboss.com/index.html?module=bb&op=viewtopic&t=107948&postdays=0&postorder=asc&start=10
分享到:
评论
2 楼 fangshun 2008-05-11  
如果部署在上层,那么应用不管如何顺序启动,你的jsf相关类会和ibm-jsf类在一个启动的加载级别,必然会先加载ibm-jsf的类路径,也就先初始化ibm的jsf上下文,it's my pain ...
1 楼 bottom 2008-05-10  
2.和jsf扩展的框架比如seam就需要部署在war中启动,myfaces-api,myfaces-impl.jar, seam.jar,seam-ui.jar等就要放在WEB-INF/lib下面,那么使用ear方式部署的项目会非常难受!

I don't understand. What's your pain?

相关推荐

    jsf 1.2 myfaces1.2.7 richfaces3.3.1 facelets1.2 所有的最新包

    **JSF 1.2** 是JavaServer Faces的第二个主要版本,它是一个Java平台上的用户界面框架,专门用于构建Web应用程序。JSF的核心是组件模型,允许开发者通过使用可重用的UI组件来构建页面。JSF 1.2带来了许多增强的功能...

    Apache MyFaces Scripting.zip

    Apache MyFaces是一个开源的JavaServer Faces (JSF)实现,由Apache软件基金会维护。...通过深入研究这些内容,你可以进一步了解如何在实际项目中利用MyFaces的脚本功能提升Web应用的性能和用户体验。

    Apache MyFaces Core.zip

    这个压缩包“Apache MyFaces Core.zip”很可能包含了MyFaces库的核心组件,允许开发者构建基于JavaEE的动态、数据驱动的Web应用。 **JavaServer Faces (JSF)** JSF是Java平台上的一种服务器端UI框架,它专门用于...

    myfaces-all.jar.zip

    总结来说,"myfaces-all.jar.zip"是MyFaces框架的一个全面集合,包含了开发基于JSF的应用所需的所有基本元素。理解MyFaces的核心概念和组件,以及如何有效地集成和使用,对于Java Web开发者来说至关重要。同时,尊重...

    常用手册 JSF及Myfaces帮助.CHM

    **JSF(JavaServer Faces)**是Java平台上用于构建用户界面的一种Web开发框架,它简化了创建、维护和管理Web应用程序的过程。JSF的核心概念是组件模型,它将UI元素视为可重用的组件,允许开发者通过声明式编程来处理...

    Apache MyFaces Trinidad.zip

    11. **部署和配置**:在实际项目中,需要了解如何在Web应用的部署描述符(web.xml)中配置Trinidad,以及如何在 faces-config.xml 文件中定义组件和行为。 通过学习和掌握Apache MyFaces Trinidad,开发者可以利用其...

    JSF及Myfaces帮助.rar

    使用MyFaces时,开发者首先需要在Web应用的配置文件中声明MyFaces为JSF实现。然后,可以创建JSF页面(通常为*.xhtml文件),使用JSF标签库定义组件。接着,通过后台Java类(Managed Beans)实现业务逻辑,并与UI组件...

    tomahawk jar

    总的来说,Tomahawk库对于开发基于JSF 2.0的应用程序来说是一个强大的工具,它扩展了JSF的核心组件,使得开发者能够构建功能更全面、交互性更强的Web应用。通过深入理解和使用Tomahawk的组件,可以提高开发效率,...

    myfaces-impl2.2.chm api文件

    chm api myfaces jsf2.2

    MyFaces1.2用的所有lib

    这个压缩包文件"**MyFaces1.2用的所有lib**"包含了MyFaces 1.2版本运行所需的一些关键库,这对于搭建和运行基于MyFaces 1.2的应用程序至关重要。以下是对这些库的详细说明: 1. **tomahawk-1.1.6.jar**:Tomahawk是...

    myfaces-core-2.0.1-bin.zip

    4. **Servlet Container Integrations**:为了在不同的Web服务器或应用服务器中运行,MyFaces可能包含特定的适配器或集成模块,如`myfaces-servlet.jar`或`myfaces-bridge.jar`。 5. **文档和示例**:压缩包中通常...

    com.springsource.org.apache.myfaces-1.1.5.jar

    jar包,官方版本,自测可用

    JSF+Spring+Hibernate小例子

    基于网上很多朋友在问JSF+Spring+Hibernate的使用方法,于是抽空写了个小例子希望大家提出宝贵意见。 采用DBUnit测试 mysql数据库脚本: 新建test数据库,初始化脚本 create table tt(id int primary key,name ...

    myfaces-all-1.1.1.jar

    此外,随着技术的演进,更现代的MyFaces版本如2.x和3.x可能引入了更多功能和性能优化,对于新项目,选择较新的版本可能是更好的选择。 总之,myfaces-all-1.1.1.jar作为MyFaces框架的一个重要组成部分,它在Java ...

    myfaces1.2 源码

    在这个版本中,MyFaces致力于提供稳定、高效和可扩展的框架,使得开发者可以更轻松地构建基于Java的Web用户界面。 在`myfaces-core-1.2.0`这个压缩包中,我们可以找到MyFaces 1.2核心库的相关源代码。这个库包含了...

    myfaces1.2

    MyFaces是JavaServer Faces (JSF)的一种开源实现,它为构建基于Java的Web应用程序提供了丰富的组件库和处理流程。标题中的"myfaces1.2"指的是MyFaces框架的1.2版本,这是一个重要的更新,包含了对JSF规范1.2的全面...

    myfaces-core-1.2.6-bin.zip

    4. **事件处理**:MyFaces Core 支持自定义事件和监听器,允许开发人员在特定的生命周期阶段执行代码,增强了应用的灵活性。 5. **国际化与本地化**:框架内置了对多语言支持的处理,允许开发者轻松地为应用添加...

    Myfaces Trinidad advance practical guide

    最后,本书作者David Thomas,不仅是一位经验丰富的开发者,而且在MyFaces Trinidad与Seam的实践应用方面有着深入的研究和丰富的经验。这些背景知识将有助于读者理解为什么这本书是学习和精通MyFaces Trinidad和Seam...

Global site tag (gtag.js) - Google Analytics