学习淘淘商城第十四课(服务调用测试)
2017-03-26 14:59
204 查看
整合完了框架之后,我们来测试一下看是否好使,如果想在启动的时候查看更多的启动信息,大家可以把log4j.properties文件放到src/main/resources目录下,这样当工程启动的时候如果有问题的话,我们便可以清楚的知道是什么错误了。log4j.properties文件大家可以到:http://download.csdn.net/detail/u012453843/9794134这个地址进行下载。正常情况下我们不用放置log4j.properties文件,因为它的信息非常多,影响我们看启动结果。只有当异常的时候才需要用到它。
在启动taotao-manager工程之前,我们先检查我们的zookeeper当前是否处于开启状态,如果看到如下所示结果,说明是启动状态。
[root@node-js zookeeper-3.3.6]# bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.3.6/bin/../conf/zoo.cfg
Mode: standalone 我们还需要做件事情,就是配置防火墙,因为防火墙不让我们访问8080和8081端口,我们处理的方案有两种:
第一种:在防火墙允许访问的端口中增加8080和8081端口
添加完端口后,重启防火墙,如下所示。
[root@node-js ~]# service iptables restart
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
iptables:应用防火墙规则: [确定]
[root@node-js ~]#第二种:为了方便,我们直接关闭防火墙并且设置开机也不启动。service iptables stop是关闭防火墙,chkconfig iptables off是禁止开机自启动,chkconfig iptables --list是查看七种情况还没有开机自启的情况,如果都是"关闭"状态,说明已经都禁止开机自启动了。
[root@node-js ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
[root@node-js ~]# chkconfig iptables off
[root@node-js ~]# chkconfig iptables --list
iptables 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[root@node-js ~]#
下面我们启动taotao-manager工程(taotao-manager-service包含在taotao-manager工程下,因此启动taotao-mananger也相当于启动了taotao-mananger-service)关于如何启动聚合工程大家可以参考:http://blog.csdn.net/u012453843/article/details/64131003这篇博客进行学习。
启动的时候,有可能碰到这样的错误,提示有可能运行环境是JRE而不是JDK,如下图所示。
我们便看下运行环境,方法是点击Window------>Preferences,弹出的对话框如下,发现确实是jre8,而不是jdk,我们需要把它换成jdk,我们"Remove"掉jre8。
点击"Add",看到下图后直接点击"Next"。
看到下图后,点击"Direcotry..."选择我们jdk的安装目录。
找到我们安装jdk的目录,然后点击"确定"。
我们会看到如下图所示界面,点击"Finish"。
如果添加完jdk1.8之后还会出现如下图所示的错误提示,那么我们就关闭eclipse,重新打开。
重启之后,发现正常了,我们点击"Apply"和"OK"。
下面我们再重新启动taotao-manager工程,当看到下图红色圈住的两行内容时说明我们的服务正常启动了。
如果长时间未看到上图最后两行信息,很有可能是我们的zookeeper未启动,我们需要打开虚拟机并启动zookeeper。
启动完服务之后,我们来启动taotao-manager-web工程,由于该工程依赖聚合工程taotao-manager下的taotao-manager-interface和taotao-manager-pojo,为了一次性解决问题,我们直接安装taotao-manager工程即可,按如下图所示操作。
安装完之后,我们到本地maven仓库位置查看下是否生成了我们想要的包。可以看到都正常生成了。
下面我们便来启动taotao-manager-web工程,看到如下图所示信息说明taotao-manager-web工程正常启动了。
下面我们便来试着访问以下服务,我们从数据库tb_item数据库表中找一个商品id,比如:830972,如下图所示。
我们在地址栏中输入:localhost:8081/item/830972来访问服务端,我们会看到如下图所示的错误。
出现上图错误的原因是我们在本地没有把taotao-manager-dao工程下的mapper相关的.xml文件编译进来,如下图所示,发现只有class文件,没有.xml文件。
要解决这个问题我们需要把.xml文件也加载进来,方法是在taotao-manager-dao工程的pom.xml文件中添加如下一段配置。
这时,我们再访问http://localhost:8081/item/830972,这时我们又会看到如下图所示错误。
这个错误是因我们我们的pojo没有实现序列化,我们把所有不是以Example结尾的pojo实现序列化,如下图所示。
由于我们改动了taotao-manager-dao和taotao-manager-pojo,因此我们最好再重新打下包。就是把taotao-manager工程maven install一下。重新打包后,我们重启taotao-manager工程。然后再访问http://localhost:8081/item/830972,发现可以正常访问到数据了!!
在启动taotao-manager工程之前,我们先检查我们的zookeeper当前是否处于开启状态,如果看到如下所示结果,说明是启动状态。
[root@node-js zookeeper-3.3.6]# bin/zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.3.6/bin/../conf/zoo.cfg
Mode: standalone 我们还需要做件事情,就是配置防火墙,因为防火墙不让我们访问8080和8081端口,我们处理的方案有两种:
第一种:在防火墙允许访问的端口中增加8080和8081端口
添加完端口后,重启防火墙,如下所示。
[root@node-js ~]# service iptables restart
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
iptables:应用防火墙规则: [确定]
[root@node-js ~]#第二种:为了方便,我们直接关闭防火墙并且设置开机也不启动。service iptables stop是关闭防火墙,chkconfig iptables off是禁止开机自启动,chkconfig iptables --list是查看七种情况还没有开机自启的情况,如果都是"关闭"状态,说明已经都禁止开机自启动了。
[root@node-js ~]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
[root@node-js ~]# chkconfig iptables off
[root@node-js ~]# chkconfig iptables --list
iptables 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[root@node-js ~]#
下面我们启动taotao-manager工程(taotao-manager-service包含在taotao-manager工程下,因此启动taotao-mananger也相当于启动了taotao-mananger-service)关于如何启动聚合工程大家可以参考:http://blog.csdn.net/u012453843/article/details/64131003这篇博客进行学习。
启动的时候,有可能碰到这样的错误,提示有可能运行环境是JRE而不是JDK,如下图所示。
我们便看下运行环境,方法是点击Window------>Preferences,弹出的对话框如下,发现确实是jre8,而不是jdk,我们需要把它换成jdk,我们"Remove"掉jre8。
点击"Add",看到下图后直接点击"Next"。
看到下图后,点击"Direcotry..."选择我们jdk的安装目录。
找到我们安装jdk的目录,然后点击"确定"。
我们会看到如下图所示界面,点击"Finish"。
如果添加完jdk1.8之后还会出现如下图所示的错误提示,那么我们就关闭eclipse,重新打开。
重启之后,发现正常了,我们点击"Apply"和"OK"。
下面我们再重新启动taotao-manager工程,当看到下图红色圈住的两行内容时说明我们的服务正常启动了。
如果长时间未看到上图最后两行信息,很有可能是我们的zookeeper未启动,我们需要打开虚拟机并启动zookeeper。
启动完服务之后,我们来启动taotao-manager-web工程,由于该工程依赖聚合工程taotao-manager下的taotao-manager-interface和taotao-manager-pojo,为了一次性解决问题,我们直接安装taotao-manager工程即可,按如下图所示操作。
安装完之后,我们到本地maven仓库位置查看下是否生成了我们想要的包。可以看到都正常生成了。
下面我们便来启动taotao-manager-web工程,看到如下图所示信息说明taotao-manager-web工程正常启动了。
下面我们便来试着访问以下服务,我们从数据库tb_item数据库表中找一个商品id,比如:830972,如下图所示。
我们在地址栏中输入:localhost:8081/item/830972来访问服务端,我们会看到如下图所示的错误。
出现上图错误的原因是我们在本地没有把taotao-manager-dao工程下的mapper相关的.xml文件编译进来,如下图所示,发现只有class文件,没有.xml文件。
要解决这个问题我们需要把.xml文件也加载进来,方法是在taotao-manager-dao工程的pom.xml文件中添加如下一段配置。
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build>添加完配置之后taotao-manager-dao工程的pom.xml文件的完整内容如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>下面我们再重启taotao-manager工程,启动完之后,我们再看下是否已经生成了.xml文件,发现已经成功生成了。
<parent>
<groupId>com.taotao</groupId>
<artifactId>taotao-manager</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>taotao-manager-dao</artifactId>
<dependencies>
<dependency>
<groupId>com.taotao</groupId>
<artifactId>taotao-manager-pojo</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<!-- Mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</dependency>
<dependency>
<groupId>com.github.miemiedev</groupId>
<artifactId>mybatis-paginator</artifactId>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
</dependency>
<!-- MySql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- 连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</dependency>
</dependencies>
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build>
</project>
这时,我们再访问http://localhost:8081/item/830972,这时我们又会看到如下图所示错误。
这个错误是因我们我们的pojo没有实现序列化,我们把所有不是以Example结尾的pojo实现序列化,如下图所示。
由于我们改动了taotao-manager-dao和taotao-manager-pojo,因此我们最好再重新打下包。就是把taotao-manager工程maven install一下。重新打包后,我们重启taotao-manager工程。然后再访问http://localhost:8081/item/830972,发现可以正常访问到数据了!!
相关文章推荐
- 学习淘淘商城第十四课(服务调用测试)
- (转)淘淘商城系列——服务调用测试
- 淘淘商城系列——服务调用测试
- Hessian学习之(一):简单测试 + C#调用Java服务
- ArcGIS学习(五)OpenLayers调用WMS服务
- 学习之路十四:客户端调用WCF服务的几种方法小议
- 用myeclipse 插件开发xfire的web service,并建立服务客户端调用此web service进行测试 ----转
- 一步一个脚印学习WCF系列之WCF概要—WCF服务的创建与调用HelloWorld实例,通过配置文件方式(六)
- 工作流学习过程-本地服务之调用方法
- C#中winform下利用ArcEngine调用ArcGIS Server发布的服务(转未测试)
- 每日学习总结:CSS:Clear属性的用法、重复交易提示框、弹出提示框后页面变形、asp.net调用smtp服务发送邮件问题
- ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试
- webservice学习 wsdl文件生成服务桩及测试桩
- JavaScript调用web服务学习(一)
- Android NDK学习(7)NDK测试时遇到的问题:C与C++互相调用
- 一步步学习SPD2010--第十四章节--在Web页面使用控件(6)--测试ASP.NET表单
- ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试
- 学习笔记:使用Web Service Software Factory开发简易留言本服务以及Mobile调用实现-1.创建Service
- ArcGIS学习(五)OpenLayers调用WMS服务
- ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试