GlassFish(水晶鱼)是一个免费、开放源代码的应用服务,它实现了Java EE 5。 Java EE 5 平台包括了以下最新技术:EJB 3.0,JSF 1.2,Servlet 2.5,JSP 2.1,JAX-WS 2.0,JAXB 2.0, Java Persistence 1.0, Common Annonations 1.0, StAX 1.0 等。
GlassFish虽然是一个标准的Java EE服务器,但是它同样具有轻便的Web容器的优点,它和Tomcat一样是优秀的Servlet容器,同时,它具备延迟加载的功能,也就是说,GlassFish在启动时只会启动一些必需的核心服务项,如Local JNDI服务,用于管理的JMX服务等,而对于暂时用不到的服务通通不予加载,直到需要的时候再说,而且这个特性不需要额外的配置。这样GlassFish的启动时间是以前的一半,内存占用也只有以前的一半。
GlassFish的另外一个秘密武器,就是Grizzly,Grizzly是一个基于Java NIO(New IO)技术,并完全以Java实现的一个HTTP的Listener,有了Grizzly,GlassFish在静态文件传输方面的性能比Tomcat要强得多,而且可以支持更多的并发访问。我们可以抛弃JBoss+Tomcat和Apache+Tomcat这样的组合了。
GlassFish社团正在开发一个免费,开源的Java EE5(下一版本的J2EE)应用服务器。这个服务器实现了Java EE5平台中的最新特性。Java EE5平台包括一些技术的最新版本如:
*.Enterprise JavaBeans (EJB) 3.0,
*.JavaServer Faces (JSF) 1.2,
*.Servlet 2.5,
*.JavaServer Pages (JSP) 2.1,
*.Java API for Web Services (JAX-WS) 2.0,
*.Java Architecture for XML Binding (JAXB) 2.0,
*.Java Persistence 1.0,
*.Common Annotations 1.0,
*.Streaming API for XML (StAX) 1.0和其它一些新的技术。
一、下载GlassFish后安装
1、解压所下载的glassfish-installer-v2ur2-b04-windows-ml.jar
命令格式:java -Xmx256m -jar glassfish-installer-v2ur2-b04-windows-ml.jar 回车;
2、cmd下,进入刚刚解压的glassfish目录下,找到setup.xml,对setup.xml进行更改,
如:更改端口、管理密码等。
3、cmd下,用ant命令(如果没有ant环境请自行安装)安装glassfish。
命令格式:ant -f setup.xml
4、进行glassfish的Eclipse设置,如果是Myeclipse可以使用自带的插件,以下略...
安装结果如下:
...
create.domain:
[exec] 使用 Admin 的端口 4848。
[exec] 使用 HTTP Instance 的端口 8080。
[exec] 使用 JMS 的端口 7676。
[exec] 使用 IIOP 的端口 3700。
[exec] 使用 HTTP_SSL 的端口 8181。
[exec] 使用 IIOP_SSL 的默认端口 3820。
[exec] 使用 IIOP_MUTUALAUTH 的默认端口 3920。
[exec] 使用 JMX_ADMIN 的默认端口 8686。
[exec] 正在使用配置文件 developer 创建域,被指定为 通过配置文件中的变量 AS_ADMIN_PROFILE。
[exec] 无法找到使用在 [F:\My-glassfish\lib\install\templates\locales\zh_CN\index.html] 中指定的语言环境 [zh_CN] 的
文件。使用默认的 (en_US) index.html。
[exec] 安全存储使用: JKS
[exec] 已创建域 domain1。
[exec] 已经将与此域 [domain1] 的管理员用户名 [admin] 相关的登录信息成功地存储在 [C:\Documents and Settings\JadoNet\.
asadminpass] 中。
[exec] 请确保此文件仍会受到保护。asadmin 命令将使用存储在此文件中的信息来管理此域。
...
主要注意以上端口,以后测试用得着...
二、测试
Myeclipse配置之后,启动GlassFish之后,访问http://127.0.0.1:8080/可以看到相关启动信息。
访问http://127.0.0.1:4848/可以登录管理后台,用户名/密码 →admin/adminadmin 以上是默认设置;
三、部署试用
测试项目test目录结构如下
–|test
–|–|src
–|–|web
–|–|–|WEB-INF
–|–|–|–lib
–|–|–|–classes
–|–|–|–web.xml
–|–|.reload
其中.reload文件是用于批量加载的时间戳,当修改java类之后修改该文件可以加载修改的class文件。
注意:web.xml必须非存在无用项,如:开始的时候,我的web.xml文件中存在<load-on-startup>1</load-on-startup>由于并没有0加载项,所以出现如下问题:
【正在域中部署应用程序 失败;为模块 [test] 行 18 列 15 装入部署描述符时出错 -- 归档文件 [test] 中有部署描述符文件 WEB-INF/web.xml。 cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/j2ee":run-as, "http://java.sun.com/xml/ns/j2ee":security-role-ref}' is expected. 为模块 [test] 行 18 列 15 装入部署描述符时出错 -- 归档文件 [test] 中有部署描述符文件 WEB-INF/web.xml。 cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/j2ee":...】
如遇到上述情况,请检查相关配置文件!
三、稍后呈上touch.exe解决手动加载问题
...
GlassFish虽然是一个标准的Java EE服务器,但是它同样具有轻便的Web容器的优点,它和Tomcat一样是优秀的Servlet容器,同时,它具备延迟加载的功能,也就是说,GlassFish在启动时只会启动一些必需的核心服务项,如Local JNDI服务,用于管理的JMX服务等,而对于暂时用不到的服务通通不予加载,直到需要的时候再说,而且这个特性不需要额外的配置。这样GlassFish的启动时间是以前的一半,内存占用也只有以前的一半。
GlassFish的另外一个秘密武器,就是Grizzly,Grizzly是一个基于Java NIO(New IO)技术,并完全以Java实现的一个HTTP的Listener,有了Grizzly,GlassFish在静态文件传输方面的性能比Tomcat要强得多,而且可以支持更多的并发访问。我们可以抛弃JBoss+Tomcat和Apache+Tomcat这样的组合了。
GlassFish社团正在开发一个免费,开源的Java EE5(下一版本的J2EE)应用服务器。这个服务器实现了Java EE5平台中的最新特性。Java EE5平台包括一些技术的最新版本如:
*.Enterprise JavaBeans (EJB) 3.0,
*.JavaServer Faces (JSF) 1.2,
*.Servlet 2.5,
*.JavaServer Pages (JSP) 2.1,
*.Java API for Web Services (JAX-WS) 2.0,
*.Java Architecture for XML Binding (JAXB) 2.0,
*.Java Persistence 1.0,
*.Common Annotations 1.0,
*.Streaming API for XML (StAX) 1.0和其它一些新的技术。
一、下载GlassFish后安装
1、解压所下载的glassfish-installer-v2ur2-b04-windows-ml.jar
命令格式:java -Xmx256m -jar glassfish-installer-v2ur2-b04-windows-ml.jar 回车;
2、cmd下,进入刚刚解压的glassfish目录下,找到setup.xml,对setup.xml进行更改,
如:更改端口、管理密码等。
3、cmd下,用ant命令(如果没有ant环境请自行安装)安装glassfish。
命令格式:ant -f setup.xml
4、进行glassfish的Eclipse设置,如果是Myeclipse可以使用自带的插件,以下略...
安装结果如下:
...
create.domain:
[exec] 使用 Admin 的端口 4848。
[exec] 使用 HTTP Instance 的端口 8080。
[exec] 使用 JMS 的端口 7676。
[exec] 使用 IIOP 的端口 3700。
[exec] 使用 HTTP_SSL 的端口 8181。
[exec] 使用 IIOP_SSL 的默认端口 3820。
[exec] 使用 IIOP_MUTUALAUTH 的默认端口 3920。
[exec] 使用 JMX_ADMIN 的默认端口 8686。
[exec] 正在使用配置文件 developer 创建域,被指定为 通过配置文件中的变量 AS_ADMIN_PROFILE。
[exec] 无法找到使用在 [F:\My-glassfish\lib\install\templates\locales\zh_CN\index.html] 中指定的语言环境 [zh_CN] 的
文件。使用默认的 (en_US) index.html。
[exec] 安全存储使用: JKS
[exec] 已创建域 domain1。
[exec] 已经将与此域 [domain1] 的管理员用户名 [admin] 相关的登录信息成功地存储在 [C:\Documents and Settings\JadoNet\.
asadminpass] 中。
[exec] 请确保此文件仍会受到保护。asadmin 命令将使用存储在此文件中的信息来管理此域。
...
主要注意以上端口,以后测试用得着...
二、测试
Myeclipse配置之后,启动GlassFish之后,访问http://127.0.0.1:8080/可以看到相关启动信息。
访问http://127.0.0.1:4848/可以登录管理后台,用户名/密码 →admin/adminadmin 以上是默认设置;
三、部署试用
测试项目test目录结构如下
–|test
–|–|src
–|–|web
–|–|–|WEB-INF
–|–|–|–lib
–|–|–|–classes
–|–|–|–web.xml
–|–|.reload
其中.reload文件是用于批量加载的时间戳,当修改java类之后修改该文件可以加载修改的class文件。
注意:web.xml必须非存在无用项,如:开始的时候,我的web.xml文件中存在<load-on-startup>1</load-on-startup>由于并没有0加载项,所以出现如下问题:
【正在域中部署应用程序 失败;为模块 [test] 行 18 列 15 装入部署描述符时出错 -- 归档文件 [test] 中有部署描述符文件 WEB-INF/web.xml。 cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/j2ee":run-as, "http://java.sun.com/xml/ns/j2ee":security-role-ref}' is expected. 为模块 [test] 行 18 列 15 装入部署描述符时出错 -- 归档文件 [test] 中有部署描述符文件 WEB-INF/web.xml。 cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/j2ee":...】
如遇到上述情况,请检查相关配置文件!
三、稍后呈上touch.exe解决手动加载问题
...