欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
GlassFish
Glassfish最新版: GlassFish RC4.
下载最新版: http://download.huihoo.com/glassfish/v2/
GlassFish简介
GlassFish是SUN组织开放源代码 J2EE 应用服务器项目,
GlassFish 是一款免费的开放源代码应用服务器,可实现 Java EE 5 平台中的最新功能。Java EE 5 平台包含最新版本的技术,如 JavaServer Pages(JSP) 2.1、JavaServer Faces(JSF) 1.2、Servlet 2.5、Enterprise JavaBeans 3.0、Java API for Web Services(JAX-WS) 2.0、Java Architecture for XML Binding(JAXB) 2.0、Web Services Metadata for the Java Platform 1.0,以及许多其他新技术。
GlassFish 使用双许可协议: Common Development and Distribution License (CDDL) and the GNU General Public License (GPL) v2
GlassFish与SUN SDK,SUN Application Server的关系:
GlassFish Distributions ,也就是基于GlassFish开发的版本有:
- Sun's Java System Application Server PE 9.0 Beta
- NetBeans 5.5 Enterprise Pack preview
- Java EE 5 SDK preview
Why use GlassFish
- GlassFish is an Open Source, Community Based implementation of Java EE 5.
- Java EE 5 is a huge improvement over earlier J2EE versions (J1 Keynotes).
- GlassFish is Production Quality, has very Good Performance and is scalable
- GlassFish is delivered in SJS AS 9.0, Java EE 5 SDK, and NetBeans 5.5.
- GlassFish has already affected adoption and is getting analyst attention [1], [2].
- GlassFish is used by other groups like in JEUS 6 Preview from TMaxSoft.
- GlassFish has many goodies, including Java DB, Java Blueprints and AJAX examples and samples
- GlassFish is committed to your favorite framework and application.
- GlassFish has extensive documentation.
- GlassFish has migration tool support
- GlassFish has a production quality administration console and security support
- GlassFish is at the forefront of JPA adoption.
- GlassFish Web Services stack is very good and it is getting better and better.
- GlassFish's Grizzly delivers top Web Tier performance and flexibility.
- GlassFish has Developer Support, Software Services, Training, classes, forums, blogs and more.
- GlassFish supports AJAX and Scripting.
- GlassFish has platform and tool SOA support, including JBI and BPEL.
- GlassFish is used directly for the official Reference Implementation of Java EE 5.
- GlassFish is the code base for the Sun Java System Application Server.
- GlassFish will incorporate the enterprise features available today in SJS AS 8.x.
- Many components are in the Maven Repository; and more soon.
- We are already working on the next releases (more).
- See some great testimonials
from https://glassfish.dev.java.net/public/faq/GF_FAQ_2.html
GlassFish V3
GlassFish v3 will supports four types of container :
http://wiki.glassfish.java.net/gfwiki/Wiki.jsp?page=GlassFishV3
HK2 for Hundred Kilobytes Kernel is a module subsystem coupled with a simple yet powerful component model to build software.It is the foundation for the GlassFish V3 application server and consist of two technologies :
- Modules subsystem
- Component Model
OSGi
- GlassFish V3 runs on OSGi http://blogs.sun.com/dochez/entry/glassfish_v3_runs_on_osgi
GlassFish V2
Admin GUI now uses JSF, Update Center functionality has been added, JSR-196 Public Draft implementation, WSIT integration has been completed, In-memory replication is partially implemented, and JBI has been fully integrated.
- First Java EE platform 5 compliant Application Server
- Ease of development with use of annotations and POJO-based programming
- Web Services management
- Self Management and Self Healing
- Single instance offering
GlassFish v2 will support:
- Developer profile
- Cluster profile
- Enterprise profile
GlassFish V2 Architecture
- Domain Administration Server (DAS)
- Administrative Client Applications (CLI, JSR 77, AMX)
- Browser Based Administrative GUI
- Web Client Applications (web clients, web services clients)
- Rich client (RMI/IIOP) applications
- Load Balancers (LB)
- Node Agent (NA)
- Server Instance (SI)
- Administration API
- Central Repository
- Local Repository Cache
- JMX Runtime
更多细节:http://www.glassfishwiki.org/gfwiki/Wiki.jsp?page=GlassFishV2Architecture
Update Center
$AS_HOME/updatecenter/bin/updatetool
Clustering
Clustering in GlassFish Version 2
Memory Replication
Based on JXTA technology and Project Shoal/GMS
GMS (Group Management Service)
- Provides dynamic membership information about a cluster and its member instances
- Cluster shape change events—
-- Members joining
-- Members shutting down vs. failing
- Memory Replication takes appropriate action in response to these events providing continuous and high availability
GMS itself is also based on JXTA technology
Based on Project Shoal— https://shoal.dev.java.net
Needed: an open-source, lighter-weightalternative to HADB
- HADB provides high availability for:
-- Http session state
-- Stateful Enterprise JavaBeans™ (EJB™) technology session state
-- Single sign-on state
- HADB: still available; still right solution for some problems
-- Enables proven “5–nines” availability
-- More complex to administer
-- Not (currently) open source
Virtual Hosting
virtual hosting features available in GlassFish v2. Virtual hosting enables ISP/ASP business models.
Persistence
GlassFish Java Persistence API implementation is based on code from TopLink contributed by Oracle.
https://glassfish.dev.java.net/javaee5/persistence/
JRuby and GlassFish
Java web applications are typically packaged as WAR files in preparation for distribution and deployment to Java EE servers. It is useful to be able to package Ruby on Rails applications in a similar form, to enable seamless deployment to Java servers.
安装指南
1. Download one of the bundles 2. Run: java -Xmx256m -jar filename.jar 3. cd glassfish 4. Run: ant -f setup.xml
For GlassFish V2 with Clustering supported installation, just change step 4 from the above installation
* ant -f setup-cluster.xml
快速指南
./asadmin help ./asadmin start-domain domain1 http://localhost:8080/ https://localhost:8181/ http://localhost:4848/ admin/adminadmin http://localhost:8080/amserver/ // Sun Java System Access Manager amadmin/admin123 // SUNWappserver/domains/domain1/config/AMConfig.properties ./asadmin stop-domain domain1
应用部署
获得 hello.war http://docs.huihoo.com/java/ee/glassfish/hello.war cp hello.war domains/domain1/autodeploy/ 或 asadmin deploy hello.war http://localhost:8080/hello asadmin undeploy hello
相关链接
- https://glassfish.dev.java.net/
- http://www.glassfishwiki.org
- http://blogs.sun.com/theaquarium/
- GlassFish 初试
GlassFish Modules
- GlassFish Web Services Management
- GlassFish Admin Infrastructure
- GlassFish Appserver Management Extensions (AMX)
Powered by GlassFish
Related GlassFish Technologies
Core
- Glassfish-samples Relevant sample applications to demonstrate Java EE Technologies
- SailFin adds SIP Servlets technology extension to GlassFish Application Server.
- HK2 - https://hk2.dev.java.net/
- openInstaller - https://openinstaller.dev.java.net/
- Shoal
- Grizzly
- GlassFishWiki - http://wiki.glassfish.java.net/
Webtier
- Phobos A lightweight, scripting-friendly, web application environment
- Web Application Description Language (WADL) - https://wadl.dev.java.net/
- JSF Java Server Faces
- JSF Templating - https://jsftemplating.dev.java.net/
- Ajax Project jMaki, Web Remoting using AJAX
WS/XML
- Jersey
- JAX-WS - https://jax-ws.dev.java.net/
- WSIT Web Service Interoperability Technology
- XWSS WebServices Security
- JAXB Java API for XML Binding
- JAXP Java API for XML Parsing
Other
- Java EE Service Engine
- BluePrints Solution Catalog guidelines and best practices for Java EE applications
- Fast Infoset Binary encoding for the XML Information Set
- Firstcup - Java EE 5 Tutorial
- Generic RA for JMS Generic Resource Adapter for JMS
- Glassfishplugins Plugins for both NetBeans and Eclipse
- istack-commons
- JAXR Java API for XML Registry
- JAX-RPC Java API for XML RPC
- JAX-WS Java API for XML Web Services
- JMS Java Messaging Service
- SAAJ The Standard Implementation for SAAJ
- Shoal - Java based clustering framework
- SJSXP Sun Java Streaming XML Parse
- StAX Streaming API for XML Parsers
- StaX-ex Extended StAX API
- Xmlstreambuffer
成功应用
- Wotif.com: What if the hottest eCommerce site in Australia ran on GlassFish?
- http://www.peerflix.com/, using the GlassFish, Solaris 10 and some of Sun's shiny new x64 hardware.