使用MyFaces和WASCE / Geronimo时的java.lang.ClassNotFoundException:com.sun.faces.config.ConfigureListener

我正在尝试使用MyFaces v 2.1与WebSphere Application Server Community Edition v3.0.0.1和Eclipse Juno创建一个简单的JSF Web应用程序,但是当我尝试运行该应用程序时,返回以下错误 java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener org.apache.geronimo.common.DeploymentException: java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener at org.apache.geronimo.web25.deployment.AbstractWebModuleBuilder.createWebAppClassFinder(AbstractWebModuleBuilder.java:665) at org.apache.geronimo.web25.deployment.AbstractWebModuleBuilder.configureBasicWebModuleAttributes(AbstractWebModuleBuilder.java:698) at org.apache.geronimo.tomcat.deployment.TomcatModuleBuilder.addGBeans(TomcatModuleBuilder.java:469) at org.apache.geronimo.j2ee.deployment.SwitchingModuleBuilder.addGBeans(SwitchingModuleBuilder.java:174) at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:764) at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:255) at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:140) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34) at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:131) at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:883) at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:245) at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:344) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) […]

Java:SortedMap,TreeMap,Comparable? 如何使用?

我有一个对象列表,我需要根据其中一个字段的属性进行排序。 我听说SortedMap和Comparators是最好的方法。 我是否正在对我正在排序的类实现Comparable,还是创建一个新类? 如何实例化SortedMap并传入Comparator? 排序如何工作? 它会在插入新对象时自动对所有内容进行排序吗? 编辑:此代码给我一个错误: private TreeMap collection = new TreeMap(); (Ktr实现Comparator )。 Eclipse说它期待类似TreeMap ,所以我提供的参数数量不正确。

断点是否会停止所有线程?

如果我在程序中同时运行两个线程并在其中一个上放置一个断点,那么另一个线程是否会在该断点被触发时停止,或者它是否会继续执行? (我用Java编写并使用NetBeans)

使用JavaScript检测Java版本

有没有可靠的方法来检测使用JavaScript在客户端计算机上安装的Java版本?

获取URL的二级域(java)

我想知道在java中是否有解析器或库用于提取URL中的二级域(SLD) – 或者没有使用算法或正则表达式来执行相同操作。 例如: URI uri = new URI(“http://www.mydomain.ltd.uk/blah/some/page.html”); String host = uri.getHost(); System.out.println(host); 打印: mydomain.ltd.uk 现在我想做的是强有力地识别SLD(“ltd.uk”)组件。 有任何想法吗? 编辑:我理想地寻找一般解决方案,所以我在“police.uk”中匹配“.uk”,在“bbc.co.uk”中匹配“.co.uk”,在“amazon”中匹配“.com” .COM”。 谢谢

为什么用Java检查双重检查锁定?

据说,除了long或double字段外,字段赋值总是primefaces的。 但是,当我读到为什么双重检查锁定被破坏的解释时,它说问题在于赋值操作: // Broken multithreaded version // “Double-Checked Locking” idiom class Foo { private Helper helper = null; public Helper getHelper() { if (helper == null) { synchronized(this) { if (helper == null) { helper = new Helper(); } } } return helper; } // other functions and members… } 线程A注意到该值未初始化,因此它获得锁定并开始初始化该值。 由于某些编程语言的语义,允许编译器生成的代码在A完成初始化之前更新共享变量以指向部分构造的对象。 线程B注意到共享变量已初始化(或显示),并返回其值。 因为线程B认为该值已经初始化,所以它不会获得锁定。 如果B在B看到A完成的所有初始化之前使用该对象(因为A尚未完成初始化或者因为对象中的某些初始化值尚未渗透到内存B使用(缓存一致性)) […]

如何将InputStream转换为DataHandler?

我正在研究一个java Web应用程序,其中文件将存储在数据库中。 最初我们通过在结果集上调用getBytes来检索数据库中已有的文件: byte[] bytes = resultSet.getBytes(1); … 然后使用明显的构造函数将此字节数组转换为DataHandler : dataHandler=new DataHandler(bytes,”application/octet-stream”); 这很有用,直到我们开始尝试存储和检索更大的文件。 将整个文件内容转储到字节数组中,然后构建一个DataHandler只需要太多内存。 我的直接想法是使用getBinaryStream检索数据库中的数据流,并以某种方式将该InputStream以内存效率的方式转换为DataHandler 。 不幸的是,似乎并没有将InputStream转换为DataHandler的直接方法。 我一直在玩的另一个想法是从InputStream读取数据块并将它们写入DataHandler的OutputStream 。 但是……当我调用getOutputStream时,我找不到创建“空” DataHandler的方法,该DataHandler返回非null的OutputStream … 有没有人这样做过? 我很感激你能给我的任何帮助或者正确的方向。

线程“main”中的exceptionjava.lang.NoClassDefFoundError:org / apache / hadoop / hbase / HBaseConfiguration

我使用的是Hadoop 1.0.3和HBase 0.94.22。 我试图运行一个映射器程序来读取Hbase表中的值并将它们输出到一个文件。 我收到以下错误: Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/hadoop/hbase/HBaseConfiguration at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:340) at org.apache.hadoop.util.RunJar.main(RunJar.java:149) Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.HBaseConfiguration at java.net.URLClassLoader$1.run(URLClassLoader.java:372) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:360) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 代码如下 import java.io.IOException; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.client.Scan; import org.apache.hadoop.hbase.filter.FirstKeyOnlyFilter; import org.apache.hadoop.hbase.io.ImmutableBytesWritable; import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil; import org.apache.hadoop.hbase.mapreduce.TableMapper; import […]

Jersey RESTful Web服务gradle设置

我坚持使用jersey库为RESTful Web服务创建一个gradle项目。 项目配置应该能够在jetty应用程序服务器中启动服务。 我已经找到了一个资源: https : //github.com/ziroby/jetty-gradle-hello-world 我的解决方案的问题是,它使用了过时的jersey版本。 我至少需要2版(最新的2.14版)。 我试图在maven central上搜索新版本,但在版本2中,很多工件名称发生了变化,我无法正确配置它。 编辑:我的项目中并不特别需要Jetty服务器。 它可以是任何应用程序服务器,适用于测试和调试我的应用程序。 我也在生产中使用docker,所以使用docker会很不错。 编辑 :(通过peeskillet) – 链接代码 建立 apply plugin: ‘java’ apply plugin: ‘jetty’ repositories { mavenCentral() } dependencies { testCompile ‘junit:junit:4.11’ testCompile ‘org.hamcrest:hamcrest-all:1.3’ testCompile ‘com.sun.jersey:jersey-client:1.17.1’ testCompile ‘com.sun.jersey:jersey-core:1.17.1’ compile ‘com.sun.jersey:jersey-core:1.17.1’ compile ‘com.sun.jersey:jersey-server:1.17.1’ compile ‘com.sun.jersey:jersey-servlet:1.17.1’ } test { exclude ‘**/*IntegrationTest*’ } task integrationTest(type: Test) { […]

具有类型参数的Guice模块

我花了一些时间想知道是否可以编写一个guice模块,它本身是用类型T参数化的,并使用它的类型参数来指定绑定。 就像在这个(不工作)的例子中一样: interface A {} class AImpl implements A{} interface B {} class BImpl implements B {} class MyModule extends AbstractModule { @Override protected void configure() { bind(new TypeLiteral<A>(){}).to(new TypeLiteral<AImpl>(){}); bind(new TypeLiteral<B>(){}).to(new TypeLiteral<BImpl>(){}); } } 我尝试了不同的方法,尝试将T传递给MyModule作为Class / TypeLiteral的实例但没有一个工作。 帮助赞赏。 此致,ŁukaszOsipiuk