草庐IT

java - Logback 找不到 logback.xml,即使它存在(在类路径上)

我遇到了登录问题。我设置了它(使用maven),一切似乎都很好,除了Logback报告它找不到配置文件(但我能够使用默认记录器配置登录到控制台)。[#|2013-07-03T07:55:30.843+0200|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=124;_ThreadName=Thread-2;|07:54:39,844|-INFOinch.qos.logback.classic.LoggerContext[default]-CouldNO

java - 如何从我的 WAR 中的类目录中读取文件?

我需要从JavaWAR应用程序的类路径中读取文本文件。我怎样才能将它读作InputStream。文件位于/WEB-INF/classes/文件夹中,但是当我使用以下代码时,它只返回null。InputStreaminput=servletContext.getClass().getClassLoader().getResourceAsStream("my_filename.txt"); 最佳答案 用正斜杠作为前缀以表示类路径的根:getResourceAsStream("/my_filename.txt")或者,您可以使用serlv

java - eclipse + Maven + Tomcat : testing web apps when the WAR is built with custom options

我正在使用带有“m2eclipse”插件的Eclipse(Helios)。我正在开发一个基于Maven的Web应用程序项目,我在Eclipse中设置的本地Tomcat服务器上对其进行了测试。一般来说,这或多或少很管用。“m2eclipse”有时可能不稳定……但在大多数情况下,它使我的POM和我的Eclipse项目设置保持同步,并且同样使已部署的代码在Tomcat中保持最新。但是,最近我又添了一个皱纹。我有一个JavaScript包含文件,在从测试环境到实际生产环境时需要有所不同。差异太大,无法通过Maven过滤和token替换来干净地处理。我需要的是在我的项目中保留两个单独的文件,并且

java - 如何在嵌入式 Jetty 8 中部署 WAR?

使用以下代码,如何部署位于类路径中的WAR应用程序?privateServers;@BeforeClasspublicstaticvoidsetUp()throwsException{//StarthttpserverRandomr=newRandom();intport=1024+r.nextInt(8976);s=newServer(newInetSocketAddress("127.0.0.1",port));//AddmyWARfordeploymenthere...s.start();}jetty8.0.1JDK6 最佳答案

java - 使用spring boot和spring-boot-maven-plugin生成war时排除application.properties

我正在使用SpringBoot开发Web应用程序,并希望生成war而不是jar。使用这里描述的从jar到war的转换工作得很好:http://spring.io/guides/gs/convert-jar-to-war/但我想从war中排除application.properties,因为我使用@PropertySource(value="file:${OPENSHIFT_DATA_DIR}/application.properties")获取文件路径生产环境。此方法在生成我的war时有效,但在eclipse中我无法运行我的应用程序,因为application.properties根本

java - 无法将 *.war 部署到 Glassfish 4

我有一个Bean接口(interface),AbstractBean(实现Bean)和SpecificBean(扩展AbstractBean)。我想通过以下代码片段注入(inject)SpecificBean:@Stateless@SpecificpublicclassSpecificBeanextendsAbstractBean{..}@Path("resource")publicclassService{@Inject@SpecificprivateBeanbean;}当我尝试将它部署到glassfish时,我看到下一个错误:AnerrorhasoccurredErroroccur

java - 不同的WAR文件,共享资源

假设您有多个应用程序共享相同的代码和大部分其他资源,但外观和感觉有些不同,一些标签发生变化等(想想品牌)。如果每个Web应用程序都放在自己的WAR文件中,您将共享资源放在哪里?我已经使用类路径来共享类和属性文件。但是javascript和css文件呢?创建和部署一个额外的WAR文件以将这些共享文件提供给需要它们的任何其他应用程序的最佳方式是什么?我还想到了一个构建脚本,它可以发挥一些魔力,并且从一个共同的来源喷出(稍微)不同的WAR,但我不喜欢它,因为它只会在您需要构建/测试/运行时不必要地使事情复杂化单个应用程序。任何其他提示和技巧将不胜感激。 最佳答案

java - 如何给 Java 程序打补丁?

最近我对Java桌面应用程序进行了修复。我通过更改其中一个类中的代码、编译它并将新的jar发送到生产环境来做到这一点。我现在被问到是否可以通过复制我修复的已编译类来在生产环境中修补jar,或者甚至创建一个能够只更新修改后的文件的修补程序/脚本。附加信息:不必在运行时应用补丁。这意味着补丁可以作为一个单独的程序或Activity来完成。我的旧程序不需要自动更新。这也可以通过网络应用程序(WAR文件)完成吗?我想出的最佳答案是这个,但它已有2年历史了。PatchingJavasoftware我的需求很少见吗?我从未见过给Java应用程序打补丁的教程。 最佳答案

java - EJB 3.1 应用程序部署为 WAR-only : What about ejb-jar. xml?

我有一个JavaEE6应用程序,由Web内容和EJB组成,并且部署为仅WAR(使用EJB3.1)。该构建基于Maven。我刚刚读到有关在JavaEE6中订购模块初始化的新可能性here我的申请也需要它。此外,我希望可以选择在XML中定义一些EJB属性。由于示例是作为EAR项目部署的,所以顺序在application.xml中定义。但是在WAR部署的项目中,没有application.xml。现在我想知道我在哪里可以定义这些信息?或者是否可以在WAR部署的应用程序中以某种方式使用application.xml?编辑:糟糕,我没有正确阅读模块顺序示例,一开始我以为这是关于我的应用程序中EJ

java - 我怎样才能找出是什么让我的 WAR 在 Tomcat 上部署了这么长时间?

我有一个Web应用程序,它通常需要大量时间才能部署到Tomcat上。我怀疑某个地方有一个数据库连接正在等待超时,但这只是一个猜测,我想确定是什么导致了延迟,以便我可以解决这个问题。任何人都可以建议我可以这样做的方法吗?我应该在加载WAR时分析Tomcat并在那里寻找线索吗?如果有,是否有适合初学者的教程?如果这很重要,我的Web应用程序使用Spring和Hibernate。一位同事告诉我,也许这些是导致速度变慢的原因,因为它们是如此之大,以至于某个地方的类加载器因需要加载的类的绝对数量而窒息。当我停止Tomcat或将WAR热部署到已经运行的Tomcat时,我也会看到这个:Jun1,20