开发者社区> 问答> 正文

如何在注解的某个属性中使用引用值??报错

需求是这样的,现在我正在发一个webservice接口,要求namespace提取到配置文件中,然后根据环境的不同动态读取出来,但是这个namespace的配置是在注解中,如下:

@WebService(targetNamespace = "${webservice.publish-host}")
public interface TestWebService {
...
}

按照上面这种方式启动后读取不到wsdl,报错信息是:

error on line 1 at column 186: xmlns:tns: '${webservice.publish-host}' is not a valid URI
error on line 3 at column 94: xmlns:tns: '${webservice.publish-host}' is not a valid URI

请问有人遇到过这种需求吗,是怎么解决的?

展开
收起
爱吃鱼的程序员 2020-06-05 13:57:16 496 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        <p>好像是不行的,我的建议是,在部署时动态编译或替换一个常量类。然后WebService注解使用常量作为targetNameSpace的值,如:</p> 
    
    @WebService(targetNamespace = WsConst.NAMESPACE_URI)

    例如在Jenkins部署时单独配置一个或多个这种常量类,通过webhook等方式有选择的选择常量文件打包部署。其实就是换一种思路,将常量类代替配置文件。

    2020-06-05 13:57:32
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
建立联系方法之一 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载