当前位置: 首页 > 知识库问答 >
问题:

如何使用管理配置服务从rest服务URL中动态删除CXF

公德明
2023-03-14

我是OSGI的新手。我使用cxf和蓝图开发了一个学生Rest服务。将其部署在karaf中。默认情况下karaf的URL中包含cxf。我发现我可以在etc文件夹中html" target="_blank">配置属性(org.apache.cxf.servlet.context=/学生),或者我可以在karaf中运行config:编辑/setprop/更新/命令。这样我就可以用一些自定义值替换url中的cxf。但是现在我想从我的url中删除CXF,而不在karaf中进行任何上述更改。有没有其他方法我可以做同样的事情?我发现使用admin config服务和配置我可以更新上述属性,但它不起作用。

我引用了以下链接:如何获取ConfigAdmin中存储的属性?-对我没用。

当我使用蓝图时,我需要添加任何额外的东西吗?以及我必须传递给createFactoryConfiguration的factorypid和位置到底是什么。

提前感谢。

共有1个答案

季森
2023-03-14

我已经为我的问题找到了解决方案。将以下代码添加到激活器的启动方法。

  Dictionary<String, String> props = new Hashtable<String, String>();
  props.put( "org.apache.cxf.servlet.context", "/student" );
  // Use OSGI admin configuration to update CXF url
  ServiceReference reference = context.getServiceReference( ConfigurationAdmin.class.getName() );
  ConfigurationAdmin admin = (ConfigurationAdmin) context.getService( reference );
  try
  {
     Configuration config = admin.getConfiguration( "org.apache.cxf.osgi", null );
     config.update( props );
  }
  catch ( Exception exception )
  {
              throw exception;
  }

无需对蓝图进行任何更改.xml。它适用于卡拉夫和春分。最初,我在equinox中尝试,而不传递位置参数来getConfiguration(),因此它不起作用。

 类似资料:
  • 在过去的几天里,我一直在使用JProfiler来分析本地运行的Websphere7服务器(从RAD8中)。我使用了JProfiler的服务器集成功能来连接到was实例。 现在,我想从WAS服务器实例中删除评测——无论何时启动服务器,它都会显示为“评测”——即使JProfiler没有运行。如何将JProfiler从服务器上“取下”?

  • 我在上传到谷歌云存储的图像文件上创建了一个imageServing url,使用: 但似乎没有删除此url的方法。可用方法“deleteServingUrl”接受一个我不使用的bloKey。 这是否意味着我不需要删除servingUrl? ///////编辑 将Appengine与objectify一起使用。创建了一个servlet,UserImageEndpoint在web中定义了它。xml格式

  • 我有一个返回json响应的spring webservice。我使用这里给出的示例创建服务:http://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/ 返回json的格式为:{“name”:null,“staffname”:[“kfc-kampar”,“smith”]} 我想从返回的响应中删除任何空对象,因此它看起来如下所示:{“

  • 配置代理服务器能干嘛 NEI toolkit 提供了代理服务器的功能,帮助将接口代理到NEI官网或者特定的服务器上 将接口代理到NEI官网 开启该功能只需将server.config.js中的online设为true, 那么对Mock Server的所有请求都将会代理到NEI官网上,该模式也被称为在线模式。 启用在线模式可以减少执行nei update的操作,在频繁更改官网数据的情况下能够大幅加快

  • 我们的项目中使用的是Spring Cloud config server,它有多个微服务。配置服务器就绪后,我们现在将所有微服务的所有属性存储在一个中央git存储库中。每个微服务能够根据应用程序名称和配置文件提取自己的属性文件。我们试图将资源包存储在中央存储库中,并让config-server将这些资源包提供给微服务。我们的资源包包括属性文件,如messages_en.properties、mes

  • YOG2 中,使用 node-ral 进行后端服务管理,我们引入后端服务管理层主要是解决以下几个问题 后端服务配置统一管理 封装异常处理、超时重试,提升系统稳定性 封装日志,便于线上问题追查 抽象请求协议、数据格式与数据编码,统一用户接口 在后端服务配置统一管理方面,我们的准则是配置优于硬编码,虽然使用类似 request 一类的库也可以很好的实现 HTTP 请求服务,但是它并没有明确的控制诸如服