ColdFusion 10中的BouncyCastle库

我一直在尝试在ColdFusion 10中使用RSA私钥加密并安装BouncyCastle库,因为它支持我的应用程序所需的加密模式。 尝试使用JavaLoader加载库导致错​​误(“类在bootclasspath上”和“JCE无法validation提供程序BC”)所以我必须静态安装它… 将jar复制到%CF_ROOT%/jre/lib/ext/并将以下内容添加到%CF_ROOT%/jre/lib/security/java.security : security.provider.=org.bouncycastle.jce.provider.BouncyCastleProvider 在没有意识到的情况下,我还从代码中删除了库,但使用该库的语句仍然有效: var privateKey = createObject(“java”, “org.bouncycastle.util.io.pem.PemReader”).init( createObject(“java”, “java.io.FileReader”).init(LOCAL.privateKeyPath) ).readPemObject().getContent(); 所以我要么在我的ColdFusion安装中永久安装BouncyCastle,要么包含在ColdFusion中。 我已经删除静态提供程序安装并使用“BC”提供程序加密继续工作而不进行修改。 如果BouncyCastle与CF捆绑在一起那么这很好,但是在运行同样更新版本的ColdFusion(CF10更新13)的另一台机器上,createObject语句失败,因为它无法找到PemReader类。 我用谷歌搜索了我的眼睛血腥,找不到任何关于BouncyCastle的文件被包含在任何版本的CF中 – 除了关于CF10 EULA中关于BouncyCastle的条款。 问题是:BouncyCastle是否包含在CF10中,如果是这样,我如何确保它已启用?

SocketException:尝试从Java中读取套接字时连接重置?

在使用Java套接字时遇到了一些烦恼,我的应用程序似乎在一个非常基本的层面上失败了。 我的部分应用程序需要跨TCP连接编写文件名。 接收者代码如下: ServerSocket serverSocket = new ServerSocket(4445); Socket socket = serverSocket.accept(); BufferedReader reader = new BufferedReader( new InputStreamReader(socket.getInputStream())); String filename = reader.readLine(); 我的发件人代码如下: Socket socket = new Socket(InetAddress.getLocalHost(), 4445); PrintWriter writer = new PrintWriter(socket.getOutputStream()); writer.write(“Test.jpg”); 非常非常基本的东西,但由于某种原因,我得到一个SocketException:连接重置当我运行它? 这是完整的堆栈跟踪: Exception in thread “main” java.net.SocketException: Connection reset at java.net.SocketInputStream.read(Unknown Source) at sun.nio.cs.StreamDecoder.readBytes(Unknown Source) at sun.nio.cs.StreamDecoder.implRead(Unknown Source) at […]

为什么只能在方法签名中声明某些exception被抛出

当使用“IllegalAccessException”声明方法时,eclipse强制我将该方法声明为抛出exception public void a() throws IllegalAccessException { if(x == 1){ throw new IllegalAccessException(“TEST); } } 并且在使用“IllegalStateException”的方法b中,我不需要将该方法声明为抛出exception public void b() { if(x == 1){ throw new IllegalStateException(“TEST); } } 什么是exception之间的差异 那个强迫我声明抛出exception的方法而另一个不是 谢谢

来自(其他问题)的行为是JVM规范中的错误还是预期的?

这个问题的代码行为是否可以预期? 为什么这会进入无限循环?

在控制台上用Java打印金字塔

我怎样才能像这样在Java中打印金字塔 1 23 456 78910 我当前的代码如下所示: public class T { public static void main(String[] args) { int i, j, num = 1; int n = Integer.parseInt(args[0]); for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { System.out.println(num); num++; } System.out.println(" "); } } } 如果我尝试删除声明的i […]

Java EE WebApp + icefaces中的长时间运行任务

我对Java EE知之甚少,但目前正在学习它。 我想出了一个涉及用户调用的长时间运行任务(最多几分钟)的项目。 该任务包括几个步骤。 当然我想向用户展示进度。 该项目使用Java EE与JPA,JSF和Icefaces。 它运行在Glassfish上。 一位经验丰富的同事向我提出了以下模式: 创建一个无状态的异步EJB,它创建一个响应对象并处理请求 在每个步骤后保留响应对象 在辅助bean中,查询并显示响应对象 这很好用。 我唯一的问题是更新状态站点以镜像进度。 目前,我每隔x秒就会重新加载一个简单的JavaScript页面。 你知道一种方式/模式来反映从无状态ejb到jsf支持bean的当前步骤吗? 或者,我更喜欢这样,你知道一种每隔x秒查询一次支持bean值的方法吗? 编辑: 我知道Icefaces推送机制,但我希望状态更新站点与计算EJB分离,原因如下: 可能已经销毁了支持bean,因为用户离开了站点并稍后返回以获取结果 一个用户可能存在多个会话,因此可能存在多个bean 设计简洁

如何告诉java.beans.Introspector忽略getter方法?

我有一个字段,它是两个值的组合。 这是从JSON序列化并且运行良好的字段。 public String getRevisions() { return revisions; } public void setRevisions(String revisions) { this.revisions = revisions; } 我添加了两个辅助方法来检索单独的值,但我不希望它们序列化为JSON。 public String getCurrentRevision() { … return first revision … } public String getPreviousRevision() { … return second revision … } 有没有办法告诉java.beans.Introspector在通过getBeanInfo()构建BeanInfo时忽略这些额外的getter? 注释很可爱,我真的希望避免为它手动创建我自己的BeanInfo 。

如何获得最近14天的Android短信

我正在尝试阅读最近14天的机器人短信,但它似乎需要一个永恒的时间来读出光标中的所有消息,所以我将它限制在第一个100,似乎没有按时间顺序排列。 有效查询esms数据以获取联系人和消息的任何想法? 我的代码: Uri uriSMSURISent = Uri.parse(“content://sms/sent”); // get the sms data for sent Cursor curSent = getContentResolver().query(uriSMSURISent, null, null, null,null); int i=0; while (curSent.moveToNext() && i<100) { String from = curSent.getString(2); if(sentHashmap.containsKey(to)) { String cumulativeMessage = sentHashmap.get(to); sentHashmap.put(from, cumulativeMessage+ " " +curSent.getString(12)); } else sentHashmap.put(from, curSent.getString(12)); i++

使用O表示法在for循环中的LinkedList上调用get()的复杂性

我可以使用O()表示法来确定一小段代码的复杂性。 代码是: for (int i = 0; i < list.size(); i++) System.out.println(list.get(i)); 有问题的列表是一个链表。 对于我们的实际,我们得到了一个现成的LinkedList类,虽然我们必须编写自己的size()和get()方法。 让我对这个问题感到困惑的是在最终计算中要算什么。 问题是: 如果列表中有100个元素,它会进行多少次查找? 基于此,使用O()表示法计算程序的复杂性。 如果我只计算get()方法,它将平均进行n / 2次查找,从而产生O(n)的大O符号。 但是,for循环的每次迭代都需要重新计算size(),这涉及查找(以确定链表中有多少个节点)。 在计算此代码的复杂性时,是否应该考虑这一点? 或者计算大小不算作查找?

将Jenkins中的参数传递给Java

我们已经设置了一些用于在Jenkins中执行构建的参数(使用简单的“参数化构建”设置)。 该作业设置为Maven测试。 有没有办法以编程方式将这些参数传递给我们的Java代码? 我们需要根据Jenkins的参数设置执行某些更新function。