亲爱的 Javarashians,我想在这篇文章中考虑什么?我只想对应用程序服务器中值得关注的部分做一个简短的概述,至少因为它们是免费的并且源代码可用。我假设你的系统与我的类似。我有Windows 7 64位,此外我有JDK 1.7和JDK 1.8,
JAVA_HOME环境变量指的是后者。就我而言,这意味着
JAVA_HOME路径是
C:\Program Files\Java\jdk1.8.0_31。 因此,当您重复下面描述的内容时,您的问题会尽可能少,例如“为什么它对我不起作用,也许我做错了什么?”,我将尝试描述我对我所做的每一个操作机器。开始…
铸造,即 选择
首先,我们需要选择应用程序服务器进行审查。为此,请查看维基百科文章
应用程序服务器比较(英文,因为没有其他)。有一个带有一堆应用程序服务器的标志,但我们感兴趣的只是那些一方面是开源的,另一方面是完全支持 JavaEE 的,即
该表中的Java EE 兼容性列必须包含类型为
Full Platform的行。从这个包含
WildFly和
JBoss 的列表中,您可以立即扔掉后者,因为 它只是
WildFly 的旧名称和旧版本。结果,我们得到了以下值得我们关注的服务器列表:
- Glassfish (不是专有的,而是来自glassfish.java.net社区的一个,但受到 Oracle 公司的支持,如果您需要 Oracle 网站上的 javaEE SDK,那么他们会给您这个应用程序服务器,否则没有其他办法)
- (红帽)WildFly(以前的 JBoss)
- (阿帕奇)杰罗尼莫
- (Apache)Tomcat(这只是一个servlet容器,不是应用程序服务器,但它是一个标准,如果程序编写正确,它肯定会工作。在其他服务器上,程序可能会在以下方面编写正确: JavaEE,但一切都会工作,它要么不正确,要么根本不工作。我说的是 Geronimo,它的小故障可以讨论很长时间)
现在让我们启动这些服务器。
如果可以在 32 位和 64 位版本之间进行选择,我为我的 64 位系统选择了一个存档器。
安装
在安装方面,一切都很简单,对于每个选定的服务器,安装只需解压存档即可。例如,我在桌面上创建了 AppServers 文件夹,我开始在其中解压缩所有内容。
设置
让我们通过设置服务器运行的 HTTP 端口来开始设置服务器。然后我们将自己注册为服务器管理员。每个服务器都有自己的配置功能。
对于雄猫来说。我们进入解压后的tomcat文件夹,然后是
conf文件夹、
server.xml文件。我们在此文件中找到数字
8080(默认 http 端口)并将其更改为我们想要的任何值。我将其设置为
9713。要将自己注册为服务器管理员,您需要在同一文件夹中打开
tomcat-users.xml文件。在其中的结束标记
</tomcat-users> 之前,添加以下标记
<user username="egarmin" password="1" Roles="manager-gui,manager-script,manager-status,manager-jmx"/ >在您的位置,我已为角色分配了最大数量的管理权限(角色)。这将允许我通过 GUI 和远程连接来部署应用程序。现在让我们启动tomcat。进入解压后的tomcat文件夹,然后进入
bin文件夹并运行
startup.bat文件。转到浏览器
http://localhost:9713。一切都应该顺利,我们就会看到老虎。
现在让我们检查您是否有权访问管理面板。为此,请转至
http://localhost:9713/manager,输入所选的登录名和密码并获得访问权限。
万岁!您只需关闭运行 Tomcat 的控制台即可暂时禁用 Tomcat。
对于玻璃鱼。转至包含已解压的
glassfish的文件夹,然后转至
glassfish 子文件夹,然后转至
domains 子文件夹,然后转至
domain1文件夹。转到
config文件夹并找到
domain.xml文件。在那里,我们还查找数字
8080(该数字通常是应用程序服务器和 servlet 容器的默认 HTTP 端口)并将其更改为我们想要的任何值。我将其设置为
9813。让我们发射 glassfish。转到包含解压的 glassfish 的文件夹,然后转到
glassfish子文件夹,然后转到
bin文件夹。运行
startserv.bat文件。在浏览器中输入地址
http://localhost:9813。在标题为
GlassFish Server 的丑陋页面上,找到转到管理控制台的链接并单击它。
接下来,进入基于JSF构建的管理控制台的精美页面,单击“
更改管理员密码”项,输入我们需要的 admin用户密码,然后确认并单击“
保存”按钮。
当您随后登录管理控制台时,您将需要输入
管理员登录名和指定的密码。 现在,您只需关闭运行 Glassfish 的控制台
即可暂时禁用
Glassfish 。对于野蝇来说。转到包含解压的
wildfly的文件夹。接下来,转到
独立文件夹,然后转到
配置文件夹,然后转到其中的
standalone.xml文件。接下来我们就按照既定的方案进行。我将端口设置为
9913。让我们启动服务器。为此,我们进入包含解压的
wildfly 的文件夹。接下来,转到
bin文件夹并运行文件
standalone.bat。打开浏览器并输入地址
http://localhost:9913。
单击
管理控制台链接进入管理控制台(即应用服务器的管理面板)。但事实并非如此,因为…… 屏幕弹出。
此屏幕告诉我们管理员尚未创建,要创建它,我们需要使用控制台实用程序
add-user.bat。好吧,如果有必要,那就有必要。我们返回
bin文件夹并运行该实用程序。首先,系统会要求您选择我们要创建的用户类型。我们需要选择项目
(a),这意味着我们需要管理员。然后系统会要求您输入该用户的名称
Username和密码
Password。密码不能为空,但可以是一个字符。实用程序当然会责骂,但如果你对“你确定吗?”这个问题回答“是”,它就会吞下它。
接下来,通过重新输入“重新输入密码”请求来确认密码。然后会有更多问题,但我们只需全部回答是肯定的并退出该实用程序。返回上面的页面,找到
“重试”链接并单击它。现在,通过输入新创建的管理员的详细信息,您可以进入管理面板。
我们通过关闭启动服务器的控制台窗口来关闭服务器。
为了杰罗尼莫。转至包含已解压的
geronimo的文件夹。
接下来,转到var 子文件夹,然后转到
config文件夹,其中包含
config-substitutions.properties文件。该文件以方便的格式描述了应用服务器使用的所有端口,但端口替换方案是相同的。我将端口设置为
10013。
让我们启动geronimo服务器。让我们转至解压后的
geronimo文件夹,然后转至
bin 子文件夹并运行其中的
startup.bat文件。进入页面
http://localhost:10013。你怎么认为?该页面很可能不存在。为什么?问题是,最新版本的 Geronimo (3.0) 无法与最新版本的 JDK (1.8) 一起工作,因此,如果您只有它,甚至有第 7 个版本,但 JAVA_HOME 环境变量仍然特指8、像我的一样,应用服务器无法启动。因此,为了让 Geronimo 工作,您必须下载 JDK 1.7。现在假设您安装了第 7 个 JDK,但不想更改 JAVA_HOME 变量的值(毕竟其他程序不会抱怨它,这意味着它们可以使用最新版本的 JDK)。该怎么办?我建议打开位于同一
bin文件夹中的setjavaenv.bat文件并查找标记为
:okJdkFileCheck的行。然后在下一行添加环境变量覆盖。比如像这样:
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_75这行是没有的,所以请自己写一下。如果你有32位系统,那么应该不会有更多问题。此外,如果您有 64 位系统并且在 64 位配置中安装了 JDK 1.7,那么一切都对您来说没问题。现在让我们想象一下,我们决定变态,在 64 位系统上从 32 位线安装 JDK 1.7(例如,我有 Windows 7 64)。然后怎样呢?然后你将不得不进行更多修改,因为在 64 位系统中,有两个用于安装程序的文件夹:
Program Files和
Program Files (x86),如果你不进行任何更改,32 位 JDK 将进入后者。这有什么可怕的?是的,看起来没问题,但是,如果 JAVA_HOME 变量在其路径 (x86) 中包含方括号,那么 Geronimo 就会消化不良。为什么?
天知道,特别是考虑到根据论坛,这个错误应该在Geronimo的第 3 版中得到修复。但没有那样的事。这件事最主要的是不要尿尿,如果印度人不改正,那我们就改正。有两种方法可以做到这一点,我更喜欢结合使用两种方法来确定。首先,再次转到
setjavaenv.bat文件并找到已经提到的标签
:okJdkFileCheck。在此标签下有一行
if "%JRE_HOME%" == "" if exit "%JAVA_HOME%\bin\javac.exe" (set JRE_HOME=%JAVA_HOME%\jre) else set JRE_HOME=%JAVA_HOME%其中治愈 Geronimo 将子字符串 JRE_HOME=%JAVA_HOME%\jre 放在引号中就足够了,即 将整行替换为
if "%JRE_HOME%" == "" if exit "%JAVA_HOME%\bin\javac.exe" (set "JRE_HOME=%JAVA_HOME%\jre") else set JRE_HOME=%JAVA_HOME%。另外,请记住或注意 Windows 7 中的 Program Files 等文件夹具有同义词(例如,文件夹
C:C:\Progra~2 )。因此,如果您在文件
setjavaenv.bat中的标签
:okJdkFileCheck之后设置变量 JAVA_HOME 的以下值
set JAVA_HOME=C:\Progra~2\Java\jdk1.7.0_75那么您还将拥有一个运行 32 位的
Geronimo服务器64 位 x 位操作系统中的 JDK。像这样......好吧,最后,您可以通过调用
startup.bat来启动Geronimo。现在应该不会有什么问题了。在浏览器中访问
http://localhost:10013页面。在左上角,找到
控制台链接并单击它。 您需要输入您的管理员用户名和密码。让我立即告诉您,这是具有密码
管理器(默认值)的系统用户。 通过转到控制台本身并按照下图所示的菜单项进行操作(选择
高级单选按钮,然后选择
安全性 > 用户和组),您可以更改系统用户的密码,或创建另一个管理员用户,然后删除这个。 您还可以通过简单地关闭运行服务器的控制台窗口来 停止
Geronimo服务器。
结论
在这篇评论中,我基本上只是完成了流行应用程序服务器和 Tomcat servlet 容器的安装和初始配置。除了 Geronimo 之外,其余的服务员对我都非常友好和热情。在下一篇文章中,我将继续考虑应用程序服务器,并采取第三步考虑 Web 服务,即我将展示如何将
第一步中描述的Web 服务部署到这些服务器中。为此,我们将为 Web 服务创建一个 war 存档,并且我将清楚地表明,必须包含在该存档中才能使服务正常工作的第三方 jar 集在不同服务器之间存在很大差异。
GO TO FULL VERSION