Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz4j Spring R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7后台标准模板
iBiz4j Spring R7
提交
1429ee0e
提交
1429ee0e
编写于
10月 25, 2021
作者:
zhouweidong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
项目支持打war包
上级
4a9c3a3b
变更
1
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
77 行增加
和
0 行删除
+77
-0
NacosRegisterConfig.java.ftl
...KGPATH%/%APP_PKGPATH%/config/NacosRegisterConfig.java.ftl
+77
-0
未找到文件。
SLN/%PUBPRJ%-app/%PUBPRJ%-app-%APP_PKGPATH%/src/main/java/%SYS_PKGPATH%/%APP_PKGPATH%/config/NacosRegisterConfig.java.ftl
0 → 100644
浏览文件 @
1429ee0e
<#
ibiztemplate
>
TARGET
=
PSSYSAPP
</#
ibiztemplate
>
<#
assign
packageType
=
""
>
<#
comment
>
前端应用微服务平台配置
</#
comment
>
<#
if
sys
.
getAllPSDevSlnMSDepApps
()??>
<#
list
sys
.
getAllPSDevSlnMSDepApps
()
as
depApp
>
<#
if
depApp
.
getUserParam
(
"ibiz.deploy.packagetype"
,
""
)??
&&
depApp
.
getUserParam
(
"ibiz.deploy.packagetype"
,
""
)
!=''>
<#
assign
packageType
=
depApp
.
getUserParam
(
"ibiz.deploy.packagetype"
,
""
)>
<#
break
>
</#
if
>
<#
break
>
</#
list
>
</#
if
>
<#
if
packageType
==
'war'
>
package
${
pub
.
getPKGCodeName
()}.
core
.
util
.
config
;
import
com
.
alibaba
.
cloud
.
nacos
.
registry
.
NacosAutoServiceRegistration
;
import
${
pub
.
getPKGCodeName
()}.
util
.
errors
.
BadRequestAlertException
;
import
lombok
.
extern
.
slf4j
.
Slf4j
;
import
org
.
springframework
.
beans
.
factory
.
annotation
.
Autowired
;
import
org
.
springframework
.
beans
.
factory
.
annotation
.
Value
;
import
org
.
springframework
.
boot
.
ApplicationArguments
;
import
org
.
springframework
.
boot
.
ApplicationRunner
;
import
org
.
springframework
.
stereotype
.
Component
;
import
org
.
springframework
.
util
.
ObjectUtils
;
import
org
.
springframework
.
util
.
StringUtils
;
import
javax
.
management
.
MBeanServer
;
import
javax
.
management
.
ObjectName
;
import
javax
.
management
.
Query
;
import
java
.
lang
.
management
.
ManagementFactory
;
import
java
.
util
.
Set
;
/**
*
外部容器启动服务时,自动注册服务到
nacos
*/
@
Component
@
Slf4j
public
class
NacosRegisterConfig
implements
ApplicationRunner
{
@
Autowired
(
required
=
false
)
private
NacosAutoServiceRegistration
registration
;
@
Value
(
"${r'${server.port:8080}'}"
)
Integer
port
;
@
Override
public
void
run
(
ApplicationArguments
args
)
{
if
(
registration
!= null && port != null) {
try
{
String
containerPort
=
getContainerPort
();
if
(
!StringUtils.isEmpty(containerPort)){
log
.
info
(
"正在尝试将应用程序注册到nacos,端口号为:{}"
,
containerPort
);
registration
.
setPort
(
new
Integer
(
containerPort
));
registration
.
start
();
}
}
catch
(
Exception
e
)
{
throw
new
BadRequestAlertException
(
"应用程序注册到nacos失败,"
+
e
,
""
,
""
);
}
}
}
/**
*
获取外部容器端口
*/
public
String
getContainerPort
()
throws
Exception
{
String
port
=
null
;
MBeanServer
beanServer
=
ManagementFactory
.
getPlatformMBeanServer
();
Set
<
ObjectName
>
objectNames
=
beanServer
.
queryNames
(
new
ObjectName
(
"*:type=Connector,*"
),
Query
.
match
(
Query
.
attr
(
"protocol"
),
Query
.
value
(
"HTTP/1.1"
)));
if
(
!ObjectUtils.isEmpty(objectNames)){
port
=
objectNames
.
iterator
().
next
().
getKeyProperty
(
"port"
);
}
return
port
;
}
}
</#
if
>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录