Java之HSF搭建demo
1、去阿里云官网下载Demo edas-app-demo.zip
2、下载Ali-Tomcat和Pandora,注意红色下面字体
a)下载 Ali-Tomcat,保存后解压至相应的目录(如:d:\work\tomcat\)。b)下载 Pandora 容器,保存后将内容解压至上述保存的 Ali-Tomcat 的 deploy 目录(d:\work\tomcat\deploy)下
3、下载轻量版EDAS(下载地址:https://help.aliyun.com/document_detail/44163.html),和配置host文件
打开host文件,C:\Windows\System32\drivers\etc,编辑最后一行增加,192.168.1.24是自己电脑ip的,域名是唯一,固定的192.168.1.24 jmenv.tbsite.net
4、cd到edas-lite-configcenter的bin目录下,运行startup.bat
5、在浏览器查看时候启动本地edas ,localhost:8080 .
如果出现diamond,说明host文件配置成功,没看到diamond,查看host文件是否配置错误
6、打开idea,加载edas-app-demo为maven项目。
1、使用aliTomcat 配置为: -Dfile.encoding=UTF-8 -Dpandora.location=D:\software\AliTomcat\taobao-tomcat-7.0.59\deploy\taobao-hsf.sar -Dhsf.server.ip=本机ip -Dhsf.server.port=12200 2、启动demo的两个应用:a)itemcenter #先启动服务提供者b)detail #再启动消费者,否则报错
7、启动注意项
a)启动的时候一定要查看pandora是否启动,如图表示启动了
b)出现HSFServiceAddressNotFoundException错误,表明消费者没有连接上服务者,或者说服务者没有启动。查看服务者时候上线,可以再localhost:8080进行查看
com.taobao.hsf.exception.HSFServiceAddressNotFoundException: HSFServiceAddressNotFoundException- error message : [HSF-Consumer] can't find target service addresses, target serviceName:com.alibaba.edas.carshop.itemcenter.ItemService:1.0.0 Group:HSF ERR-CODE: [HSF-0001], Type: [BIZ], More: [http://edas.console.aliyun.com/code?faq=HSF-0001]at com.taobao.hsf.registry.RegistryInvocationHandler.invoke(RegistryInvocationHandler.java:173)at com.taobao.hsf.invocation.DelegateInvocationHandler.invoke(DelegateInvocationHandler.java:12)at com.taobao.hsf.remoting.service.LocalInvocationHandler.invoke(LocalInvocationHandler.java:99)at com.taobao.hsf.invocation.filter.RPCFilterBuilder$TailNode.invoke(RPCFilterBuilder.java:280)at com.taobao.hsf2dubbo.context.DubboRPCContextClientFilter.invoke(DubboRPCContextClientFilter.java:43)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.context.RPCContextClientFilter.invoke(RPCContextClientFilter.java:31)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.rpc.generic.GenericInvocationClientFilter.invoke(GenericInvocationClientFilter.java:59)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.remoting.service.InvocationValidationFilter.invoke(InvocationValidationFilter.java:48)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.plugins.spas.SpasClientFilter.invoke(SpasClientFilter.java:82)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.plugins.eagleeye.EagleEyeClientFilter.invoke(EagleEyeClientFilter.java:76)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.invocation.stats.InvocationStatsClientFilter.invoke(InvocationStatsClientFilter.java:45)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.monitor.log.filter.MonitorLogClientFilter.invoke(MonitorLogClientFilter.java:51)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.common.filter.CommonClientFilter.invoke(CommonClientFilter.java:26)at com.taobao.hsf.invocation.filter.RPCFilterNode.invoke(RPCFilterNode.java:71)at com.taobao.hsf.invocation.filter.RPCFilterBuilder$HeadNode.invoke(RPCFilterBuilder.java:246)at com.taobao.hsf.invocation.filter.FilterInvocationHandler.invoke(FilterInvocationHandler.java:28)at com.taobao.hsf.cluster.TestAddressInvocationHandler.invoke(TestAddressInvocationHandler.java:50)at com.taobao.hsf.remoting.service.AsyncInvocationHandler.invoke(AsyncInvocationHandler.java:44)at com.taobao.hsf.invocation.FutureInvocationHandler.invoke(FutureInvocationHandler.java:44)at com.taobao.hsf2dubbo.DubboAsyncInvocationHandler.invoke(DubboAsyncInvocationHandler.java:93)at com.taobao.hsf.invocation.AsyncToSyncInvocationHandler.invokeType(AsyncToSyncInvocationHandler.java:220)at com.taobao.hsf.invocation.AsyncToSyncInvocationHandler.invoke(AsyncToSyncInvocationHandler.java:46)at com.taobao.hsf.profiler.ProfilerSyncInvocationHandler.invoke(ProfilerSyncInvocationHandler.java:35)at com.taobao.hsf.rpc.client.ErrorLogSyncInvocationHandler.invoke(ErrorLogSyncInvocationHandler.java:47)at com.taobao.hsf2dubbo.DubboFilterSyncInvocationHandlerInterceptor.invoke(DubboFilterSyncInvocationHandlerInterceptor.java:76)at com.taobao.hsf.rpc.client.ClientConcurrencyLimiter.invoke(ClientConcurrencyLimiter.java:41)at com.taobao.hsf.InvocationUtil.invoke(InvocationUtil.java:43)at com.taobao.hsf.proxy.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:31)at com.taobao.hsf.proxy.JdkProxyFactory$JdkProxyInvocationHandler.invoke(JdkProxyFactory.java:99)at com.sun.proxy.$Proxy22.getItemById(Unknown Source)at com.alibaba.edas.carshop.detail.StartListener$1.run(StartListener.java:27)at java.lang.Thread.run(Thread.java:748)
8、服务提供者和消费者配置
a)假设存在一个服务提供者ItemService
其配置如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:hsf="http://www.taobao.com/hsf"xmlns="http://www.springframework.org/schema/beans"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.taobao.com/hsfhttp://www.taobao.com/hsf/hsf.xsd" default-autowire="byName"><bean id="itemService" class="com.alibaba.edas.carshop.itemcenter.ItemServiceImpl" /><!-- 提供一个服务示例 --><hsf:provider id="itemServiceProvider" interface="com.alibaba.edas.carshop.itemcenter.ItemService"ref="itemService" version="1.0.0"></hsf:provider> </beans>
View Code
b)假设存在一个消费者detail,需要使用上述的服务ItemService
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:hsf="http://www.taobao.com/hsf"xmlns="http://www.springframework.org/schema/beans"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.taobao.com/hsfhttp://www.taobao.com/hsf/hsf.xsd" default-autowire="byName"> <!-- 消费一个服务示例 --><hsf:consumer id="item" interface="com.alibaba.edas.carshop.itemcenter.ItemService"version="1.0.0"></hsf:consumer> </beans>
View Code
记住:在需要使用别人的服务时,一定要先启动需要调用的服务,否则报错!!!
转载于:https://www.cnblogs.com/ywjfx/p/10978171.html
Java之HSF搭建demo相关推荐
- java开发环境搭建——mysql、navicat、powerDesigner下载安装
近期学习java框架,搭建demo工程时需要做数据库连接的测试,本地开发环境最方便的数据库自然是安装mysql.下面对mysql数据库.navicat for mysq客户端.powerDesigne ...
- Java基础第一讲:Java的故事和Java编程环境搭建
{ Android学习指南 } 适于自学的ANDORID学习指南,基于ANDROID 2.2.2.3.3及3.0版本讲解 <ANDROID学习指南>目录 RSS Java基础第一讲:Jav ...
- 如何搭建java环境_vscode搭建java环境
首先,下载Jdk,Jre进行安装其次,设置环境变量,指向你的java安装目录安装JavaIDE软件,比如MyEclipse,当然MyEclipse自带jdk,可以直接使用,不用配置环境变量,但是最好配 ...
- Java框架JSON-RPC项目demo代码实战 + JAVA WEB配置虚拟目录(转自21天java web开发)
Java框架JSON-RPC项目demo代码实战 备注 JAVA WEB配置虚拟目录(转自21天java web开发) https://blog.csdn.net/wjxbj/article/det ...
- Linux Java Web 服务器搭建之tomcat安装
Linux Java Web 服务器搭建之tomcat安装 一 Tomcat 简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是 ...
- kafka 0.9 java开发_kafka 0.9 java producer and consumer demo
实验环境: kafka_2.11-0.9.0.1.tgz zookeeper-3.4.6.tar.gz 样例代码: git clone https://github.com/downgoon/hell ...
- ADI官方源码快速搭建demo工程验证设计的正确性
目录 1 ADI官方demo工程设计简介 2 ADI官方HDL源码介绍 2.1 HDL源码用户指导书:ADI Reference Designs HDL User Guide 2.2 C源代码下 ...
- java开发环境安装原理,java开发环境搭建 java开发环境的完整搭建过程
想了解java开发环境的完整搭建过程的相关内容吗,Rosalh在本文为您仔细讲解java开发环境搭建的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java开发环境搭建步骤,java开发环 ...
- Java开发环境搭建详解
Java开发环境搭建详解 http://topic.csdn.net/u/20110829/13/BF4FAA45-3E1A-48A8-BC46-0405B7F862A2.html 一.jdk安装与 ...
最新文章
- Synchronized、偏向锁、自旋锁、轻量级锁以及锁的升级过程
- python画圆简单代码-python实现画圆功能
- oracle sga 4031,Oracle ORA-4031错误产生的原因详解
- 【theano-windows】学习笔记十七——梯度中的consider_constant
- 如何开发一个可运维系统的一点体会
- python模块导入_Python模块及其导入
- Ubuntu14.04 Apollo 3.5安装
- 匪夷所思:罕见的 Oracle 全局事务锁等待事件分析
- 机器学习常见的六大错误
- 金融科技:科技生活化和生活金融化
- Android studio 如何连接手机
- 使用appfox工具测试登录有图片验证码接口的问题
- 网易163邮箱相关服务
- matlab求全相应
- linux安装iscsi设备,Linux安装管理ISCSI卷(initiator端)
- 有关AE2020中文版改为英文版的方法
- 微信小程序API----授权登录拿到用户头像昵称等信息
- MATLAB 信号与系统
- 什么是桶(bucket)?什么是度量(metrics)?
- java clob http传送_JAVA CLOB作为参数传给ORACLE后台