• [问题求助] 华为云微服务CSE在使用过程中遇到的一些问题
    华为云微服务CSE在使用过程中遇到的一些问题,问题描述如下:服务提供者 provider  , 在使用idea使用run启动入口类的时候,服务可以正常启动,在servicecenter中可以看到provider服务正常,但是在服务详情中无法查看到服务契约,在控制台也无法看到生成服务契约(如图1)。 但是如果在idea中使用debug模式启动入口类 ,服务可以正常启动,服务契约也可正常查看,控制台也可以看到生成服务契约的日志(如图二)初步怀疑是无法扫描到schema注解所致,可是却无法更详细的定位方法 ,求此领域大神指点一二图一如下:图二如下:
  • [教程] 导入CSEJavaSDK的demo工程,遇到maven依赖问题
    有些同学在导入CSEJavaSDK的demo工程的时候,会发现maven依赖没有导入进来。代码中很多类都是红的,显示无法找到类:此时大家可以跑一下mvn clean package构建命令,看看控制台里的输出日志:关键日志如下:Non-resolvable import POM: Failure to find com.huawei.paas.cse:cse-dependency:pom:2.3.62 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ line 18, column 19 -> [Help 2]可以看到,日志里显示maven在尝试从maven中央仓库拉取依赖包(这是maven的默认配置,也有可能是其他的错误地址),而不是从华为云镜像站拉取依赖。这就说明该环境上的maven setting文件没有按照Day2培训中的说明进行配置,建议大家按照操作指导再配置一下maven setting文件。
  • [问题求助] 如何获取CSE帮助以及技术干货汇总
    CSE和ServiceComb有非常紧密的联系,开源的帮助材料也适用于CSE的开发。# 商业渠道a. CSE是华为云ServiceStage的子功能,主要提供基于servicecomb-java-chassis(ServcieComb引擎)、spring cloud(Spring Cloud引擎)的微服务全生命周期管理。 ServiceStage 产品介绍页: https://www.huaweicloud.com/product/servicestage.html , ServiceStage 产品帮助页: https://support.huaweicloud.com/servicestage/index.html 。帮助页可以获取到产品介绍、应用场景、开发指南、优秀实践等多方面内容。b. 微服务培训课程: 进入华为云学院, https://edu.huaweicloud.com/courses/, 搜索 “微服务”, 可以找到相关的微服务课程。c. 通过提交工单、购买咨询和专业服务等获取工程师的协助。# 开源渠道a. ServiceComb官网: https://servicecomb.apache.org/cn/ 。 官网包含 ServiceComb 的最新动态、版本信息、 开发指南和技术博文等帮助信息。 通过官网,还可以获取到邮件列表、开发者信息等,和开发者进行在线交流。b. issues: issues是github为开源项目提供的交流空间,可以进行提问或者提交bug。 ServiceComb项目列表: https://github.com/apache?utf8=%E2%9C%93&q=servicecomb&type=&language= 。 c. 搜索和关注微信公众号“微服务蜂巢”,定期会推送相关技术文章、新功能和案例。# 个人贡献者a. 开发指南: 和华为云有关的场景: https://huaweicse.github.io/cse-java-chassis-doc/b. 使用google, bing, sogo或者baidu进行搜索    搜索的时候,可以采用以下技巧,比如:    使用站内搜索,提升准确性:CSE Spring Boot MVC site:bbs.huaweicloud.com    搜索包含关键日志:比如 CSE Spring Boot MVC     尝试多个搜索引擎:比如谷歌、搜狗、bing、百度等。c. 个人贡献者      liubao68的华为云博客: https://bbs.huaweicloud.com/community/iblognew/id_1505821502554271   liubao68的知乎博客: https://zhuanlan.zhihu.com/solve-problem-use-microservices   # 技术干货:    打造一个企业级应用的微服务开发框架(上)---从服务注册中心到服务管理中心: https://bbs.huaweicloud.com/blogs/8c98dc59412611e89fc57ca23e93a89f    打造一个企业级应用的微服务开发框架(下)---ServiceComb通信处理详解: https://bbs.huaweicloud.com/blogs/0a1a862f412611e89fc57ca23e93a89f    ServiceComb的开放性设计: https://bbs.huaweicloud.com/blogs/1fc9427c088611e89fc57ca23e93a89f    ServiceComb微服务开发框架介绍: https://bbs.huaweicloud.com/blogs/ad88f16dd98511e8bd5a7ca23e93a891    基于CSE的微服务架构实践-基础架构: https://bbs.huaweicloud.com/blogs/8bb2c3b8366c11e9bd5a7ca23e93a891    基于CSE的微服务架构实践-轻量级架构技术选型: https://bbs.huaweicloud.com/blogs/1be7166e371511e9bd5a7ca23e93a891    基于CSE的微服务架构实践-Spring Boot技术栈选型: https://bbs.huaweicloud.com/blogs/eca98a6f399a11e9bd5a7ca23e93a891    基于CSE的微服务架构实践-Spring Cloud技术栈选型: https://bbs.huaweicloud.com/blogs/e8e3deb63f1311e9bd5a7ca23e93a891    基于CSE的微服务工程实践-以契约为中心: https://bbs.huaweicloud.com/blogs/c998f257673711e9bd5a7ca23e93a891    基于CSE的微服务工程实践-Native API先行: https://bbs.huaweicloud.com/blogs/7c03a4793cd011e9bd5a7ca23e93a891    单体应用微服务改造实践: https://bbs.huaweicloud.com/blogs/17ad483f325f11e9bd5a7ca23e93a891    如何进行微服务的多环境开发部署: https://bbs.huaweicloud.com/forum/thread-11095-1-1.html    使用CSE实现滚动升级零中断: https://bbs.huaweicloud.com/blogs/72a312f09c8911e89fc57ca23e93a89f
  • 华为云微服务CSEJavaSDK问题一:契约在SC中无法获取
    【摘要】 Idea启动provider后服务契约SC无法获取,Eclipse中启动正常Provider Log:2019-03-16 23:00:57,413 [ERROR] Can not output merged.log4j.properties,because can not write to directory of file file:/Users/zhenbing/.m2/reposit...Idea启动provider后服务契约SC无法获取,Eclipse中启动正常Provider Log:2019-03-16 23:00:57,413 [ERROR] Can not output merged.log4j.properties,because can not write to directory of file file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/transport-rest-vertx/1.1.0.B036/transport-rest-vertx-1.1.0.B036.jar!/config/base/log4j.properties org.apache.servicecomb.foundation.common.utils.Log4jUtils.outputFile(Log4jUtils.java:103)2019-03-16 23:00:57,427 [INFO] Found main class "com.intellij.rt.execution.application.AppMain". org.apache.servicecomb.foundation.common.utils.JvmUtils.findMainClass(JvmUtils.java:62)2019-03-16 23:00:57,490 [INFO] Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@97e1986: startup date [Sat Mar 16 23:00:57 CST 2019]; root of context hierarchy org.springframework.context.support.AbstractApplicationContext.prepareRefresh(AbstractApplicationContext.java:583)2019-03-16 23:00:57,596 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/foundation-config/1.1.0.B036/foundation-config-1.1.0.B036.jar!/META-INF/spring/cse.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:57,892 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/foundation-vertx/1.1.0.B036/foundation-vertx-1.1.0.B036.jar!/META-INF/spring/cse.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:57,921 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/java-chassis-core/1.1.0.B036/java-chassis-core-1.1.0.B036.jar!/META-INF/spring/cse.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:58,863 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/handler-bizkeeper/1.1.0.B036/handler-bizkeeper-1.1.0.B036.jar!/META-INF/spring/cse.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:58,883 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/handler-loadbalance/1.1.0.B036/handler-loadbalance-1.1.0.B036.jar!/META-INF/spring/cse.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:58,904 [INFO] Loading XML bean definitions from URL [jar:file:/Users/zhenbing/.m2/repository/com/huawei/paas/cse/cse-handler-cloud-extension/2.3.62/cse-handler-cloud-extension-2.3.62.jar!/META-INF/spring/services.bean.xml] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:317)2019-03-16 23:00:59,296 [INFO] Environment received, will get configurations from [org.springframework.core.env.StandardEnvironment@1532554556]. org.apache.servicecomb.config.ConfigurationSpringInitializer.setEnvironment(ConfigurationSpringInitializer.java:59)2019-03-16 23:00:59,336 [WARN] No URLs will be polled as dynamic configuration sources. com.netflix.config.sources.URLConfigurationSource.<init>(URLConfigurationSource.java:121)2019-03-16 23:00:59,336 [INFO] To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath. com.netflix.config.sources.URLConfigurationSource.<init>(URLConfigurationSource.java:122)2019-03-16 23:00:59,419 [INFO] create local config: org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:114)2019-03-16 23:00:59,419 [INFO]  jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/java-chassis-core/1.1.0.B036/java-chassis-core-1.1.0.B036.jar!/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,419 [INFO]  jar:file:/Users/zhenbing/.m2/repository/com/huawei/paas/cse/cse-solution-service-engine/2.3.62/cse-solution-service-engine-2.3.62.jar!/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,420 [INFO]  file:/Users/zhenbing/IdeaProjects/MicroService/Demo-Day4-Homework/helloworld-consumer/target/classes/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,458 [INFO] Found SPI service org.apache.servicecomb.config.spi.ConfigCenterConfigurationSource, count=1. org.apache.servicecomb.foundation.common.utils.SPIServiceUtils.loadSortedService(SPIServiceUtils.java:79)2019-03-16 23:00:59,458 [INFO]   0. org.apache.servicecomb.config.archaius.sources.ConfigCenterConfigurationSourceImpl. org.apache.servicecomb.foundation.common.utils.SPIServiceUtils.loadSortedService(SPIServiceUtils.java:82)2019-03-16 23:00:59,467 [INFO] create local config: org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:114)2019-03-16 23:00:59,467 [INFO]  jar:file:/Users/zhenbing/.m2/repository/org/apache/servicecomb/java-chassis-core/1.1.0.B036/java-chassis-core-1.1.0.B036.jar!/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,468 [INFO]  jar:file:/Users/zhenbing/.m2/repository/com/huawei/paas/cse/cse-solution-service-engine/2.3.62/cse-solution-service-engine-2.3.62.jar!/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,468 [INFO]  file:/Users/zhenbing/IdeaProjects/MicroService/Demo-Day4-Homework/helloworld-consumer/target/classes/microservice.yaml. org.apache.servicecomb.config.ConfigUtil.createLocalConfig(ConfigUtil.java:116)2019-03-16 23:00:59,476 [INFO] Found SPI service org.apache.servicecomb.deployment.DeploymentProvider, count=1. org.apache.servicecomb.foundation.common.utils.SPIServiceUtils.loadSortedService(SPIServiceUtils.java:79)2019-03-16 23:00:59,476 [INFO]   0. org.apache.servicecomb.deployment.DefaultDeploymentProvider. org.apache.servicecomb.foundation.common.utils.SPIServiceUtils.loadSortedService(SPIServiceUtils.java:82)缺少了产生swagger的步骤(下面是Eclipse输出的Log信息):2019-03-16 23:14:36,313 [INFO] Service startup completed! microservice.demo.training21days.provider.bootevent.CustomBootEventListener.onBootEvent(CustomBootEventListener.java:18)2019-03-16 23:14:36,313 [INFO] ============================= microservice.demo.training21days.provider.bootevent.CustomBootEventListener.onBootEvent(CustomBootEventListener.java:19)2019-03-16 23:14:36,319 [WARN] keyStore [server.p12] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:118)2019-03-16 23:14:36,320 [WARN] trustStore [trust.jks] file not exist, please check! org.apache.servicecomb.foundation.vertx.VertxTLSBuilder.buildTCPSSLOptions(VertxTLSBuilder.java:138)2019-03-16 23:14:36,324 [INFO] Monitor data sender started. Configured data providers is {com.huawei.paas.monitor.HealthMonitorDataProvider,} com.huawei.paas.monitor.DataFactory.start(DataFactory.java:62)2019-03-16 23:14:36,325 [INFO] ServiceComb is ready. org.apache.servicecomb.core.SCBEngine$1.afterRegistryInstance(SCBEngine.java:188)2019-03-16 23:14:36,342 [INFO] Waiting for status up. timeout: 10000ms org.apache.servicecomb.core.SCBEngine.waitStatusUp(SCBEngine.java:362)2019-03-16 23:14:36,343 [INFO] Status already changed to up. org.apache.servicecomb.core.SCBEngine.waitStatusUp(SCBEngine.java:371)2019-03-16 23:15:06,343 [INFO] sc task interval changed from -1 to 30 org.apache.servicecomb.serviceregistry.task.ServiceCenterTaskMonitor.beginCycle(ServiceCenterTaskMonitor.java:39)
  • [问题求助] CSEJavaSDK maven依赖无法导入
    用VS code 搭建环境,已经成功安装JAVA1.8、Maven。已经在helloworld-consumer\src\main\resources\microservice.yaml文件中修改AK\SK;运行helloworld-consumer\src\main\java\microservice\demo\training21days\consumer\AppMain.java文件报错,如下图所示。
  • [技术干货] 使用CSEJavaSDK/ServiceComb-Java-Chassis开发的微服务,启动失败,找不到javax.xml.ws.Holder
    昨天有两个同学碰到CSEJavaSDK开发的demo服务跑不起来的问题,错误日志如下图,报找不到javax.xml.ws.Holder:碰到找不到类的问题,我们一般下意识都认为是maven的依赖导入有问题,但是这个类不是通过maven依赖导入的,仔细检查一下可以发现它是jre里提供的,通常不可能找不到的。经过沟通后发现问题的原因是Java版本不对,当前 CSEJavaSDK/ServiceComb-Java-Chassis 支持的是Java8,而这两位同学使用的是其他版本的Java。后续如果有人碰到找不到javax.xml.ws.Holder类的问题可以参考这个检查一下。
  • [技术干货] CSE 支持接口响应序列化为JSON时过滤掉为null的字段吗?
    如题,想做一个动态查询的接口,要求响应是随着请求的字段动态变化的,所以考虑接口响应转为JSON时序列化掉为null的字段CSE 支持接口响应序列化为JSON时过滤掉为null的字段吗?
  • [技术干货] CSE支持spring boot哪些版本
    从我们目前已知的情况, CSE支持spring boot 1和spring boot 2的所有版本,缺省依赖的是1.5.12.RELEASE和2.0.0.RELEASE。 CSE和Spring Boot集成的原理可以参考: https://bbs.huaweicloud.com/blogs/eca98a6f399a11e9bd5a7ca23e93a891这里有和spring boot1和spring boot2的例子:   spring boot 2: https://github.com/huaweicse/cse-java-chassis-samples/tree/master/porter   spring boot 1: https://github.com/huaweicse/cse-java-chassis-samples/tree/master/springboot-samplespring boot1和spring boot2相关的pom依赖说明参考: https://huaweicse.github.io/cse-java-chassis-doc/using-cse-in-spring-boot/spring-boot-2.html
  • [技术干货] CSE服务提供哪些访问鉴权功能
    微服务之间权限管控解决办法有,采用服务账号(SPIFFE ),采用用户身份,对于第三方系统访问系统内部微服务还有API token、Oauth等方式,华为云CSE服务有为客户提供相关功能么
  • [技术干货] Spring Boot定义的REST接口使用CSE框架后报告404
    定义了如下接口:  @GetMapping(path = "/v1/user111/ping", produces = MediaType.APPLICATION_JSON_VALUE)   String ping111()   {     return null;   }在Spring Boot下能够正常调用,切换CSE框架后,报告如下错误:o.a.s.c.rest.locator.OperationLocator    : locate path failed, status:Not Found, http method:GET, path:/v1/user111/ping/, microserviceName:user-service出现这个原因是因为这个接口不是public的, CSE约束所有发布为接口的方法,必须是public,而spring boot则没这个限制。 
  • [技术干货] 使用CSE SDK如何进行文件上传
    文件上传下载的开发文档参考:  *  https://docs.servicecomb.io/java-chassis/zh_CN/general-development/file-upload.html  * https://docs.servicecomb.io/java-chassis/zh_CN/general-development/file-download.html代码示例可以参考ServiceComb提供的DEMO:https://github.com/apache/servicecomb-java-chassis里面有大量的开发示例,下载的示例在DownloadSchema.java, 上传的在CodeFirstSpringmvc.java快速参考:上传  @RequestMapping(path = "/upload", method = RequestMethod.POST, produces = MediaType.TEXT_PLAIN_VALUE, consumes = MediaType.MULTIPART_FORM_DATA_VALUE)   @Override   public String fileUpload(@RequestPart(name = "file1") MultipartFile file1,       @RequestPart(name = "someFile") MultipartFile file2, @RequestAttribute("name") String name) {     return super.fileUpload(file1, file2, name);   }下载  // generate HttpHeaders.CONTENT_DISPOSITION to be "attachment;filename=tempFilePart.txt" automatically   @GetMapping(path = "/tempFilePart")   public Part tempFilePart(String content) throws IOException {     File file = createTempFile(content);     return new FilePart(null, file)         .setDeleteAfterFinished(true)         .setSubmittedFileName("tempFilePart.txt");   }   @GetMapping(path = "/file")   public File file(String content) throws IOException {     return createTempFile("file.txt", content);   } 
  • [技术干货] 使用CSE的RpcReference或者RestTemplate如何访问第三方应用?
    CSE提供了RPC和RestTemplate两种方式访问服务端,提供了丰富一致的开发治理能力, 如果能够访问第三方就更加方便了。 CSE也提供了访问第三方的机制。 由于CSE访问服务端,需要事先知道契约, 而第三方没有契约; 另外一个问题是第三方的地址不是通过服务中心发现的。因此访问第三方需要解决如下几个问题:声明契约:  @Path("/rest/it-producer/v1/dataTypeJaxrs")   interface DataTypeJaxrsSchemaIntf {     @Path("intPath/{input}")     @GET     int intPath(@PathParam("input") int input);     @Path("intQuery")     @GET     int intQuery(@QueryParam("input") int input);     @Path("intHeader")     @GET     int intHeader(@HeaderParam("input") int input);     @Path("intCookie")     @GET     int intCookie(@CookieParam("input") int input);     @Path("intForm")     @POST     int intForm(@FormParam("input") int input);     @Path("intBody")     @POST     int intBody(int input);     @Path("intAdd")     @GET     int intAdd(@QueryParam("num1") int num1, @QueryParam("num2") int num2);     //strinnum1     @Path("stringPath/{input}")     @GET     String stringPath(@PathParam("input") String input);     @Path("stringQuery")     @GET     String stringQuery(@QueryParam("input") String input);     @Path("stringHeader")     @GET     String stringHeader(@HeaderParam("input") String input);     @Path("stringCookie")     @GET     String stringCookie(@CookieParam("input") String input);     @Path("stringForm")     @POST     String stringForm(@FormParam("input") String input);     @Path("stringBody")     @POST     String stringBody(String input);     @Path("stringConcat")     @GET     String stringConcat(@QueryParam("str1") String str1, @QueryParam("str2") String str2);   }声明/注册访问地址和协议    String endpoint = "rest:23.3.3.3:8080?sslEnabled=false";     RegistryUtils.getServiceRegistry()         .registerMicroserviceMappingByEndpoints(             THIRD_PARTY_MICROSERVICE_NAME, "1.2.1",             Collections.singletonList(endpoint),             DataTypeJaxrsSchemaIntf.class);     MicroserviceInstance instance = new MicroserviceInstance();     instance.setEndpoints(Collections.singletonList(endpoint));     RegistryUtils.getServiceRegistry()         .registerMicroserviceMapping(             ASYNC_THIRD_PARTY_MICROSERVICE_NAME, "1.1.1",             Collections.singletonList(instance),             DataTypeJaxrsSchemaAsyncIntf.class         );这样就可以了。详细代码参考:  https://github.com/apache/servicecomb-java-chassis/blob/master/integration-tests/it-consumer/src/main/java/org/apache/servicecomb/it/testcase/thirdparty/Test3rdPartyInvocation.java
  • [技术干货] 使用CSE如何设置cookie
    CSE主要提供了一个REST开发框架,没有像其他框架,比如tomcat等,将原生的HTTP接口公布出来,可以使用类似HttpServletResonse设置cookie。 那么CSE如何设置cookie了?具体有两种方式:通过网关(比如edge service进行设置。)这个需要网关开发者在登录流程里面处理。 这里有个例子可以参考: https://github.com/huaweicse/cse-java-chassis-samples/blob/master/HouseAppWithSpringBoot2/edge-service/src/main/java/com/huawei/cse/houseapp/edge/LoginDispatcher.java通过JS脚本来设置, 使用JS脚本调用认证接口,将session-id设置到cookie中。 这里有个例子可以参考: https://github.com/huaweicse/cse-java-chassis-samples/blob/master/porter/porter_lightweight/gateway-service/src/main/resources/ui/js/login.js
  • [技术干货] CSE在脚本中指定服务监听地址
    使用CSE开发时,都是通过microservice.yaml文件指定服务监听地址,比如:  rest:    address: 0.0.0.0:18083??sslEnabled=true但是使用0.0.0.0是监听所有网卡,在多网卡情况下,上报给服务中心地址就可能不正确,也可能有安全风险,所以我们应该在启动脚本中自动获取到ip地址,并设置给他,在这里我们可以通过环境变量的方式来传递。比如在start.sh脚本中使用如下代码:#!/bin/bashexport REST__HOST=`ifconfig eth0 | awk '/inet /{print $2}' | cut -d: -f2 | awk '{print $1}'`export SSL_ROOT=`pwd`/certificatesjava $CMDVAR -jar ./user-1.0.0.jar在microservice.yaml里面可以这么配置  rest:    address: ${REST_HOST}:18083??sslEnabled=true
  • [技术干货] CSE开启ssl提供rest服务,证书路径平台默认是从哪儿读取的
    问题:    CSE JAVA SDK开启ssl提供rest服务,证书路径平台默认是从哪儿读取的,我把server.p12和microservice.yaml放在一起,但是平台报keyStore [server.p12] file not exist, please check!解决:  CSE的证书配置参考: https://docs.servicecomb.io/java-chassis/zh_CN/security/tls.html   读取的证书路径和ssl.sslCustomClass指定的实现类有关,具体逻辑是由这个类决定的。 默认情况下, 是从“当前目录”读取相关证书文件。 
总条数:279 到第
上滑加载中