小编Ada*_*ner的帖子

用于管理Java中的XAdES签名的库

我正在寻找一个允许创建和验证XAdES签名的Java库(格式越多越好:XAdES-BES,XAdES-C,XAdES-XL等).

我发现最有趣的实现是:

  • Java XML数字签名API(JSR 105)(= Java SE 6中包含的API),它基于以下内容;
  • Apache Santuario(http://santuario.apache.org/),它仅为基本功能提供有用的支持;
  • XAdES4j(http://code.google.com/p/xades4j/,精彩的演示文稿:http://prezi.com/06vyxbgohncv/xades4j-en/ ),这似乎很有趣,因为它"可以生成,验证和扩展XAdES主要表单中的签名:XAdES-BES,XAdES-EPES,XAdES-T和XAdES-C.此外,通过丰富现有签名来支持扩展表单".然而,这是一个thesys的结果,它只有一个开发人员;
  • eID数字签名服务(http://code.google.com/p/eid-dss/),由比利时联邦ICT部门开发,支持XAdES-XL格式.

您建议使用哪个或建立哪个?

java xml archiving digital-signature xml-signature

13
推荐指数
1
解决办法
1万
查看次数

这样的功能是否已经存在?(或者,这个功能有什么更好的名字?)

我最近几次用以下模式编写代码,并且想知道是否有更短的编写方式.

foo :: IO String
foo = do
    x <- getLine
    putStrLn x >> return x
Run Code Online (Sandbox Code Playgroud)

为了让事情变得更清洁,我写了这个函数(虽然我不确定它是否合适):

constM :: (Monad m) => (a -> m b) -> a -> m a
constM f a = f a >> return a
Run Code Online (Sandbox Code Playgroud)

然后,我可以像这样做foo:

foo = getLine >>= constM putStrLn
Run Code Online (Sandbox Code Playgroud)

这样的函数/习语是否已经存在?如果没有,我的constM有什么更好的名字?

monads haskell idioms

13
推荐指数
1
解决办法
583
查看次数

如何绕过python nosetest中的"sys.exit()"?

看来,蟒蛇nosetest会遇到当"sys.exit()"退出,而这个内置的嘲讽不工作.谢谢你的建议.

python mocking nose

13
推荐指数
4
解决办法
9434
查看次数

XML序列化:对象未序列化

Unspecified error当我尝试调用特定的Web服务方法时,我得到了一个" ".使用XMLSpy我发现参数对象尚未被序列化.

在生成的序列化程序源中,我注意到以下行:

if (!needType) {
  System.Type t = o.GetType();
  if (t == typeof(global::moonraker1.Conference)) {
  }
  else {
    throw CreateUnknownTypeException(o);
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,wsdl import创建了一个名为的单元moonraker1.BookingService,因此实际上是参数对象的类型moonraker1.BookingService.Conference.似乎完全有可能这就是对象未被序列化的原因,尽管我不明白为什么消息仍然似乎传递给Web服务.

任何人都可以对此有所了解吗?或者我完全走错了轨道?

xml-serialization

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

DB2死锁超时Sqlstate:40001,原因代码68是由于使用SQL从servlet调用的更新语句

我从servlet到DB2一个接一个地调用update语句.我收到错误sqlstate 40001,原因代码68,我发现它是由于死锁超时.

  • 我该如何解决这个问题?
  • 可以通过设置查询超时来解决吗?
  • 如果是,那么如何在servlet中使用更新语句或在何处使用它?

db2

11
推荐指数
1
解决办法
7万
查看次数

Haskell:带有$的函数应用程序

在下面的代码片段中,您可以看到我在Haskell中编写的两个collat​​z函数.对于递归应用程序,我在第一个示例(collat​​z)中使用括号来获得正确的优先级.

由于我刚刚用$学习了函数应用程序,我试图用这个东西重写函数(collat​​z').但是,我遇到以下错误:

无法匹配期望类型`[a]'与推断类型`a1 - > [a1]'在`(:)'的第二个参数中,即``collat​​z''在`($)'的第一个参数中,即`n:collat​​z''在表达式中:n:collat​​z'$ n`div` 2

collatz :: (Integral a) => a -> [a]

collatz 1 = [1]

collatz n | even n    = n : collatz (n `div` 2)
          | otherwise = n : collatz (n * 3 + 1)

collatz' :: (Integral a) => a -> [a]

collatz' 1 = [1]

collatz' n | even n    = n : collatz' $ n `div` 2
           | otherwise = n : collatz' $ n * 3 + 1 …
Run Code Online (Sandbox Code Playgroud)

haskell ghci

11
推荐指数
3
解决办法
435
查看次数

使用JTDS驱动程序

我有一个情况.我有一个几乎准备好发布(在2个月内发布)的应用程序,它在microsoft Sql-Server数据库上运行查询.我们使用sql-server的标准Microsoft jdbc驱动程序实现.效果很好,没问题.

现在有一个开发人员给我说我应该将我们的默认jdbc实现切换到JTDS驱动程序实现.

我在网上读了一些关于驱动程序及其基准测试的信息等等,而且看起来微软的驱动程序看起来好一点.

但考虑到发布很快,驱动程序是开源和所有其他我现在都没有想到的东西,你会投入时间来进行切换吗?

sql-server jtds jdbc

10
推荐指数
3
解决办法
6532
查看次数

如何检测Dispatcher.DisableProcessing是否处于活动状态?

如果Dispatcher挂起(Dispatcher.DisableProcessing()调用),则尝试显示消息框时会引发异常.

InvalidOperationException:'Dispatcher processing has a suspended'(参见此处).

有谁知道我怎么能检测到Dispatcher暂停的地方(所以我知道什么时候打电话BeginInvoke())?

编辑1:

为了响应Application.DispatcherUnhandledException事件,我试图显示一个MessageBox.但是,如果在DataBinding(即ItemsControl.ItemsSource)期间抛出此未处理的异常,Dispatcher则会暂停.试图显示MessageBox然后失败.总是使用Dispatcher.BeginInvoke()解决问题,但我不想这样做,除非真的有必要.

编辑2:

使用Reflection完成此操作的方式如下:

var dispatcherType = typeof(Dispatcher);
var countField = dispatcherType.GetField("_disableProcessingCount", BindingFlags.Instance | BindingFlags.NonPublic);
var count = (int)countField.GetValue(Dispatcher.CurrentDispatcher);
var suspended = count > 0;
Run Code Online (Sandbox Code Playgroud)

wpf dispatcher

10
推荐指数
1
解决办法
3702
查看次数

MediaPlayer - setDataSource失败 - 无法打开内容的fd://

我的应用下载音频文件/sdcard/Music.当我尝试播放它们时,我收到以下错误.

V/MediaPlayer-JNI(2789):setDataSource:path content:// media/external/audio/med ia/2 E/MediaPlayerService(1130):无法打开内容的fd:// media/external/audio/media/2

如果我下载文件/sdcard/,文件播放正常.该程序在下载之前创建子文件夹'Music','sdcard'和'Music'的权限看起来相同.

android

10
推荐指数
0
解决办法
1787
查看次数

将通知设置为特定时间

我希望我的通知每天中午12:00运行.如何用时间替换when值?

NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Notification notify = new Notification(R.drawable.icon,"Its Time to Eat",when);

Context context = GrubNOWActivity.this;
CharSequence title = "Its Time to Eat";
CharSequence details = "Click Here to Search for Restaurants";
Intent intent = new Intent(context,Search.class);
PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0);
notify.setLatestEventInfo(context, title, details, pending);
nm.notify(0,notify);
Run Code Online (Sandbox Code Playgroud)

android android-notifications

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