Tomcat:PreResources标记没有加载jar

我正在使用tomcat 9,并试图从PreResources标签下面加载所有与项目相关的jar。 External-lib文件夹位于tomcat目录中,符合’base’中提到的路径。 但是当部署应用程序时,我得到以下错误。 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 这是从web.xml调用的, org.springframework.web.context.ContextLoaderListener 在tomcat lib中,我们只有tomcat库,其余所有jar都在External-lib文件夹中。 由于我们有类似的webApp和jar太多,我们正在尝试外化它们而不是加载到webapp / web-inf / lib文件夹中。 请建议,使用PreResources元素从meta-inf / context.xml加载jar时我遗漏了什么。 这个PreResources元素的示例和文档非常少。 任何方向或帮助将不胜感激。

马尔可夫链:SQL数据库和Java表示

现在这个问题有点模糊。 我有一个基于文本的马尔可夫链,我通过解析用户输入的文本生成。 它用于生成几乎连贯的乱码串,并根据序列中的当前单词存储给定单词作为文本序列中下一个单词的概率。 在javascript中,此对象看起来如下所示: var text_markov_chain = { “apple” : { “cake” : 0.2, “sauce” : 0.8 }, “transformer” : { “movie” : 0.95, “cat” : 0.025, “dog” : 0.025 } “cat” : { “dog : 0.5, “nap” : 0.5 } // … } 因此,例如,如果当前单词是变换器,那么我们生成的下一个单词将有95%的机会成为电影,并且分别有2.5%的机会成为猫或狗。 我的问题有两个: 在Java中表示此对象的最佳方法是什么? 我最关心的是50%的快速访问和50%的内存使用率 如何将此对象存储在单个数据库表(例如MySQL)中? 更新:为了回应@ biziclop的回答,以及@ SanjayTSharma的评论,在我的课程下面我最终写了(这是一项正在进行的工作,麻省理工学院的许可证。它目前只生成一阶Markov链。 import java.io.IOException; import […]

Javamail从特定发件人处获取所有电子邮件

在java中,我需要从特定的发件人那里获取所有电子邮件。 有几种方法可以做到这一点,如下所示: http : //www.codejava.net/java-ee/javamail/using-javamail-for-searching-e-mail-messages 但是我需要在gmail端完成这个过程。 我阅读所有电子邮件然后决定应该继续哪一个电子邮件是不对的。 另外在http://alvinalexander.com/java/javamail-multiple-search-terms-pop3-mailbox-yahoo中你可以搜索它很棒的邮件正文,但是发件人(FROM部分)呢? 我该如何过滤它? 每次阅读所有电子邮件都不利于我们的带宽(当然,我们可以标记上次阅读的电子邮件,并以某种方式阅读所有新电子邮件,例如使用UIDFolder) 谢谢

Tomcat虚拟主机和通配符dns匹配

我创建了一个应用程序,它需要接受通配符dns并使用该通配符值向数据库请求。 我试图为自己模拟一个虚拟环境来实现我想要的东西: 1)在我的Linux操作系统中,我更改了/ etc / hosts并添加以下行: 127.0.0.1 test-domain.com 127.0.0.1 mehdi.test-domain.com 2)我更改了我的tomcat server.xml文件,如下所示: www.test-domain.com *.test-domain.com 3)我将项目war文件’Root.war’部署到$ {TOMCAT} / webapps / ROOT文件夹中 现在,当我请求“ www.test-domain.com ”时,我看到了网页主页,我想在输入这个url“ mehdi.test-domain.com ”时,我从url中获取mehdi并对其执行操作向我的用户显示mehdi页面。 问题1:如何在应用程序中获取通配符值? 问题2:我们是否有可能让tomcat在运行时将请求URL转换为其他内容并将其传递给应用程序(我需要通配符值ex:mehdi)? http://mehdi.test-domain.com转到http://test-domain.com/mehdi 问题3:是否可以只有第二个<主机名= …定义并删除第一个? 我怎么能在我的应用程序中处理它?

如何在Anjuta IDE中导入现有的Java项目?

我有一个现有的Java项目,我在另一台计算机上使用Eclipse创建并上传到github。 在我的Fedora机器上,我使用Anjuta的github插件导入项目,导入工作正常(我可以在Project窗格中看到我所有的java文件)。 但是,当我单击运行 – >执行时,我收到以下错误: /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 1: package: command not found /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 2: import: command not found /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 3: import: command not found /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 5: public: command not found /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 7: syntax error near unexpected token `(‘ /home/bhavesh/AnjutaProjects/word_wave.git/deltaHacks/src/deltaHacks/LeapFun.java: line 7: ` public static void main(String[] args) {‘ 似乎Anjuta不承认这个项目是一个Java项目。 我应该更改什么设置才能识别Java?

列表排序时在List中查找值的最佳方法

假设我有一个已排序的Java ArrayList。 现在我想找到值x的索引。 什么是最快的(不超过30行代码)方式来做到这一点? 使用IndexOf()方法? 在简单的for循环中迭代所有值? 使用一些很酷的算法? 我们正在谈论让我们说50个整数键。

Java printff字符串只输出格式

如何使用printf格式化输出。 假设我想在格式化程序中打印以下内容。 testing testing testing testing testingggg testingggg testingggg testingggg 我不问有关使用“\ t”,我问的是printf样式格式? 如果有人可以给我建议和例子。 或者可以与示例链接。 我可以做到符合我的需要。

SWT:通过双击阻止树扩展?

我有SWT树的问题。 我的情况是这样的:我有一个SWT树,它包含许多TreeItems(日志条目),它们也包含TreeItems。 这些日志条目有很长的消息,根本无法在TreeColumns中显示。 所以我的想法是:在树上添加一个监听器,由DoubleClick打开一个新的Dialog,显示条目的详细信息。 到现在为止还挺好。 如果我双击一个项目,它就可以了。 但是:如果我双击一个父项,它将展开(这很好),但我的双击监听器也是活动的,然后对话框将打开。 那不是,我想要的。 因此,该问题有两种解决方案:1)通过双击自动防止树扩展/折叠并自己实现方法或2)识别项目已扩展且事件必须中止。 我真的不知道如何做1或2.你们知道吗? 提前致谢。

管理客户端套接字池

我需要从Java应用程序管理与外部服务器的长时间运行的TCP套接字连接。 我正在寻找一个好的套接字池,所以我将能够重新使用套接字。 还有另一个解决方案而不是org.apache.commons.pool2 ?

如何使用Log4j创建基于进程的日志文件?

以下是我的课程详情。 ClassA和ClassD是可运行的类。 从ClassA我调用ClassB和ClassC。 package comp1 -> Contains ClassA, ClassB, ClassC package comp2 -> Contains ClassD, ClassE Log for comp1 -> comp1.log Log for comp2 -> comp2.log 我正在使用Log4j进行日志记录。 我有两个基于包名称的记录器。 我从ClassD调用ClassE和ClassB 。 现在, comp1.log包含来自ClassB日志消息, comp1.log包含来自ClassD和ClassE日志。 如何制作基于流程的日志? 如果我运行ClassD那么ClassD , ClassE和ClassB只应该有一个日志文件。 这可能使用Log4j吗?