小编Bil*_*fer的帖子

使用netbeans将gradle war部署到Tomcat

我正在研究NetBeans以确定是否要将它用于我的ide.我的项目是一个使用Gradle的简单的基于Spring的战争构建.我的目标应用服务器是Tomcat 8.

我能够将我的Gradle项目导入NetBeans,并启动Gradle构建以从项目导航器中产生一场战争.我已将我的Tomcat服务器设置为NetBeans中的服务器,但我没有看到任何迹象表明NetBeans了解我有一个war项目或任何方法将该war部署/调试到我的Tomcat服务器中.

显然,我可以手动或通过Gradle插件进行部署,然后将NetBeans调试器远程连接到Tomcat,但我的目标是让NetBeans在可能的情况下管理本地构建,部署和调试.

在这种情况下,任何指向文档的指针都会有所帮助,因为我的谷歌搜索工作没有取得任何进展.

tomcat netbeans war gradle

12
推荐指数
1
解决办法
746
查看次数

angular-cli路由器延迟加载

我正在尝试运行一个示例Web应用程序来了解Angular模块的延迟加载是如何工作的.我通过使用角度2.4.1的angular-cli 1.0.0-beta.24生成了应用程序.我生成了核心应用程序,然后是3个组件.然后我在应用程序级别添加了路由,并通过将组件导入app模块直接引用前两个组件.对于第三个组件,我只是使用Angular路由文档中指定的loadChildren方法添加路由.我对主应用程序的路由配置如下:

const appRoutes: Routes  = [
    { path: 'comp1', component: Comp1Component},
    { path: 'comp2', component: Comp2Component},
    { path: 'comp3', loadChildren: 'app/comp3/comp3.module'}
];

export default RouterModule.forRoot(appRoutes);
Run Code Online (Sandbox Code Playgroud)

我将第三个组件的代码转换为模块,并将所有从应用程序导入到第三个组件.该模块的路由配置如下:

const routes: Routes = [
    {path: '', component:Comp3Component}
];

export default RouterModule.forChild(routes);
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,Comp1和Comp2的路由工作正常,当我单击Comp3的链接(模块路由)时,我得到以下错误记录到控制台:

EXCEPTION: Uncaught (in promise): Error: Cannot find module ./comp3/comp3.module'.
Error: Cannot find module './comp3/comp3.module'.
    at webpackEmptyContext (http://localhost:4200/main.bundle.js:77:8) [angular]
Run Code Online (Sandbox Code Playgroud)

似乎webpack没有处理延迟加载.我已尝试过"loadChildren"调用的各种路径变体,包括:

loadChildren: 'app/comp3/comp3.module#Comp3Module'
Run Code Online (Sandbox Code Playgroud)

没有改变行为(仍然得到上面的错误).angular2的新功能可能是我的代码中的内容,但我看到其他人得到了相同的错误.我的google/stackoverflow foo并未引导我找到解决方案.我在这里将我的示例应用程序添加到了我的Github帐户.

我看到Angular团队的另一位开发人员记录了这个问题,但是他们把它作为支持问题踢给了StackOverflow,因为样本在plunkr上工作. 我确信在那里有一个线索,但我对webpack并不是很了解,以及它在找到应用程序的plunkr与ng服务运行中的差异时所做的工作.

添加其他信息.应用程序的html模板看起来像这样(也可以在github repo上获得):

 <h1> …
Run Code Online (Sandbox Code Playgroud)

angular2-routing angular-cli angular

4
推荐指数
1
解决办法
4667
查看次数

JBoss 7 jndi在战争中使用ejb包的名字

有没有人知道如何修改在JBoss 7.2(EAP 6.1)下的战争中部署的ejb的全局jndi名称的"模块"组件?

根据规范,模块名称与基本战争名称相同,在我的情况下包括版本号.

这是oracle的规范:

java:global/[<application-name>]/<module-name>/<bean-name>
Run Code Online (Sandbox Code Playgroud)

在我的情况下,它是yeilds:

java:/global/mywar-1.0/MyService
Run Code Online (Sandbox Code Playgroud)

我想要的是:

java:/global/mywar/MyService
Run Code Online (Sandbox Code Playgroud)

我知道我可以在部署之前修改战争的名称,但更愿意通过配置文件明确命名模块.我试图使用ejb-jar.xml模块名称,但它没有任何效果.

jboss ejb jndi java-ee

3
推荐指数
1
解决办法
1860
查看次数

Spring Boot REST 方法中的 Micrometer @Timed 和 Prometheus 错误

我正在尝试使用 Micrometer 的 @Timed 注释从我的 Spring Boot 应用程序向 Prometheus 发送数据,并且看到了奇怪的行为。我在 prometheus 中看到了我的方法的数据,但我也看到它在某些情况下失败,但下面有例外。我包含了必要的库,并遵循了 Spring Boot 配置说明来添加 Micrometer @Timed 注释。在构建指标的键时,感觉像是 Spring Boot / Micrometer 错误。我的定时注释很简单:

    @GetMapping(value = {"/pageable"}, produces = MediaType.APPLICATION_JSON_VALUE)
    @Timed("employees.get.pageable")
    public Page<Employee> all(@SortDefault(sort = "id", direction = Sort.Direction.ASC) Pageable p) {
        return (Page<Employee>) employeeRepository.findAll(p);
    }
Run Code Online (Sandbox Code Playgroud)

任何想法我可能做错了什么?我很乐意回复额外的配置,但不想在这里粘贴我的整个项目。堆栈跟踪:

2020-01-21 18:53:40.559 ERROR 1 --- [nio-8080-exec-8] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception
java.lang.IllegalArgumentException: Prometheus requires that all meters with the same name have the same set of …
Run Code Online (Sandbox Code Playgroud)

spring-boot prometheus spring-micrometer

3
推荐指数
1
解决办法
2288
查看次数