
我自己解决了这个问题,感到非常兴奋。尽管我自己没有得到帮助,但我希望其他人也可以使用此线程,并且能够使其正常工作!
因此,我有一个Vaadin应用程序,该应用程序已编译为WAR文件。我通过以下步骤将其部署到OpenShift服务器:
将已编译的Webapp部署到OpenShift- 在网络浏览器中打开OpenShift。登录到Openshift。导航到有问题的应用程序。
- 获取位于墨盒右侧的该应用程序的ssh代码(应在屏幕右侧)。使用Command-C或Ctrl-C复制该代码。
- 打开终端并输入
git clone ssh:\xxxxxxxxxxxxxxxx...
- 如果您像我一样使用Mac,则应在上创建一个项目目录
Users/Username/Appname
。在该目录内,删除源文件夹和pom.xml
。取出编译的WAR文件并将其复制到webapps
目录中。 - 转到终端。键入
cd Appname
,然后git add .
,git commit -m "Deployment"
和最后git push
。 - 您的应用程序现在应该可以在
www.openshiftappname-domainname.rhcloud.com/warfilename
- 安装用于MySQL和phpMyAdmin的墨盒。应该可以通过
Add Cartidge
您的openshift.com
应用程序中心访问。 - 注意您
username
和password
OpenShift自动为您生成的MySQL数据库。转到www.openshiftappname-domainname.rhcloud.com/phpmyadmin
,输入身份验证凭据。 - 在phpMyAdmin内部应该有服务器IP地址;看起来像
127.x.y.z:3306
。x, y, and z
可以是一位数字到三位数字。 - 快速创建一个新
database
名称,随心所欲。我要为其命名test
,然后在其中生成一个名为的新表testtable
。 - 那么还记得您部署的WAR应用程序吗?好吧,如果您使用的是MySQL,我敢打赌您已经将它包含在应用程序中了。建立与MySQL的连接的基本步骤就是这样。
转到编译为WAR文件的开放IDE项目。如果它是Maven项目,请转到项目内部的pom.xml,并添加依赖项:
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.25</version> </dependency>
- 然后使用以下代码。
String s = "jdbc:mysql://" + host + ":" + port + "/" + name",其中host是
serverIP address,端口
3306和名称是
database name,在我的情况,
test。
try { Class.forName("com.mysql.jdbc.Driver");} catch (ClassNotFoundException e) { e.printStackTrace();}try { Connection con = DriverManager.getConnection(s, username, password);}catch (SQLException e) { e.printStackTrace();}现在
if (con == null)它不起作用了。如果不是
null,那就可以了。
要进行测试,您应该重新编译WAR文件(在进行某种形式的可视化测试之后)。如果您需要进一步的帮助,请发表评论。当您编译WAR文件并重
4-6做第一部分中的步骤时,它应该可以工作
Deploymentof compiled webapp to OpenShift。谢谢!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)