小编Ira*_*chi的帖子

在Web中重新托管工作流设计器

我知道WF设计师有重新托管能力.由于它是基于WPF的,我认为它可以在web中使用silverlight进行重新托管.

有没有人对此有任何经验?或者,有没有人知道一个简单而强大的基于Web的WF工作流设计器解决方案?

silverlight designer web-applications workflow-foundation

6
推荐指数
1
解决办法
6362
查看次数

如何告诉Apache CXF在Spring Configuration中使用java.util.Date

我正在使用CXF 在Spring上下文中托管Web服务,这使得JAX-WS成为默认绑定.我正在使用Java-First,这意味着带注释的端点接口和类.

由于JAX-WS的默认绑定使用XMLGregorianCalendar类来表示日期,因此当我调用我的Web服务传递时,java.util.Date它会转换为XMLGregorianCalendar服务器上的.

关于如何更改此绑定日期值的帖子和文档很多java.util.Date,但都与wsdl2java工具有关,例如:

<jaxws:bindings wsdlLocation="YOUR_WSDL_LOCATION"
          xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
          xmlns:xs="http://www.w3.org/2001/XMLSchema"
          xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
          xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <jaxws:bindings  node="wsdl:definitions/wsdl:types/xs:schema[@targetNamespace='THE_NAMESPACE_OF_YOUR_SCHEMA']">
      <jxb:globalBindings xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
        <jxb:javaType name="java.util.Date" xmlType="xs:dateTime"
                      parseMethod="org.apache.cxf.tools.common.DataTypeAdapter.parseDateTime"
                      printMethod="org.apache.cxf.tools.common.DataTypeAdapter.printDateTime"/>
      </jxb:globalBindings>
  </jaxws:bindings>
</jaxws:bindings>
Run Code Online (Sandbox Code Playgroud)

由于我使用的是Spring,我正在寻找一种在Spring上下文配置文件(或CXF配置文件)中执行此操作的方法.我文件的片段:

<jaxws:endpoint id="jaxwsDocumentGroupWsEndpoint" implementor="#documentGroupWsEndpoint" address="/documentGroup">
<!-- SOMETHING TO WRITE HERE TO TELL CXF TO USE java.util.Date ??? -->
</jaxws:endpoint>
Run Code Online (Sandbox Code Playgroud)

java web-services cxf jax-ws

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

在C#中查找数字字符的数值

Unicode字符中有多个范围表示数字,为其char.IsDigit返回true.例如:

bool b1 = char.IsDigit('\uFF12');    // full-width '2' -> true
bool b2 = char.IsDigit('\u0665');    // true
bool b3 = char.IsDigit('5');         // true
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来获得这些字符的数字等价物.请注意,int.Parse(...)它不起作用,因为它期望输入字符在基本unicode范围内('0'..'9').

这相当于Java的Character.digit(...)行为.

由于.NET框架的char.IsDigit方法正确地将这些字符标识为数字,我希望它也具有此功能,但我找不到任何东西.

c# parsing numbers char

6
推荐指数
1
解决办法
1591
查看次数

在HTML中水平放置尽可能多的div,并填充线宽

我有一堆固定宽度的div元素,使用inline-block显示类型进行内联流动.这会在行的末尾留下一个空的空间(下一行div无法安装并包裹到下一行).

我想做的是,将行上的所有div均匀地展开以填充行,类似于文本的"Justify"对齐.

换句话说,我希望在div元素上具有最小宽度,并在单行中尽可能多地填充它们,并填充整行.

这是我的示例HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <style>
        #container { margin: 100px; padding: 10px; border: 1px solid blue; }
        .item { margin: 10px; width: 300px; min-width: 300px; display: inline-block; border: 1px solid red; }
    </style>
</head>
<body>
    <div id="container">
        <div class="item">Item One</div>
        <div class="item">Item Two</div>
        <div class="item">Item Three</div>
        <div class="item">Item Four</div>
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

纯CSS + HTML有可能吗?或者我是否必须编写脚本来实现此结果?


更新:由于人们一直建议使用百分比宽度来装配单行中的项目,我必须注意到这不是这个问题的意图.我希望有类似"Justified"的文字,但是有块.项目数量是可变的,可能太多.

块需要具有相同的大小,具有默认(最小)宽度,如果需要,将导致它们换行到下一行,并且需要通过扩展子宽度来填充容器的宽度.


更新2:

目前的样本产生如下:

|--------------------------- Container …
Run Code Online (Sandbox Code Playgroud)

html css

6
推荐指数
1
解决办法
5864
查看次数

具有零键功能的线程安全映射

我需要一个多线程Map对象来在我的Web服务器的缓存中使用,我需要有null密钥.

HashMap允许我有空键,但ConcurrentHashMap没有.我试图创建一个HashMap使用的同步版本,Collections.synchronizedMap(new HashMap())但它也不接受null密钥.

有没有我可以使用的替代方案,而不必实现某种方式来包装null密钥?

java synchronization hashmap concurrenthashmap

5
推荐指数
1
解决办法
4481
查看次数

C#/.NET 相当于 Java 的 Matcher.matches() 和 Matcher.lookingAt()

我正在寻找一种方法来确定单个正则表达式是否与整个字符串、字符串的开头或 C# 中的一部分匹配。

在 Java 中,您可以构造一个Matcher对象,并使用方法matches()来检查它是否与整个输入匹配,lookingAt()查看它是否与输入的开头匹配,以及find()查看字符串中是否存在任何匹配。

在.NET中,我可以使用Match.Success来查看是否有任何匹配,并检查Match.IndexMatch.Length是否满足上述条件。

问题是,如果找到较小的匹配项,它不会尝试匹配整个输入。例如,如果将输入“1234”提供给 Regex @"\d{2}|\d{4}",它将匹配前两位数字。

在这种情况下,我需要用Regex该模式构建另一个@"^(\d{2}|\d{4})$"来测试整个输入,然后测试另一个以查看它是否与开头匹配。

有没有办法告诉同一个Regex类更喜欢整个输入匹配,这样我就不需要为此创建(和编译)另一个正则表达式?


编辑:问题不是关于模式,它只是一个例子来说明我的意思。

.net c# regex

5
推荐指数
1
解决办法
3384
查看次数

AutoMapper 中子对象中没有前缀名称的扁平化

将这些类视为源:

public class SourceParent
{
    public int X { get; set; }
    public SourceChild1 Child1 { get; set; }
    public SourceChild2 Child2 { get; set; }
}

public class SourceChild1
{
    public int A { get; set; }
    public int B { get; set; }
    public int C { get; set; }
    public int D { get; set; }
}

public class SourceChild2
{
    public int I { get; set; }
    public int J { get; set; }
    public int …
Run Code Online (Sandbox Code Playgroud)

c# automapper

5
推荐指数
1
解决办法
959
查看次数

如何知道请求何时在RequestWrapper对象中转发

我正在使用子类HttpServletRequestWrapper对请求参数进行一些翻译,并在第一次请求时缓存翻译的值.例如,第一次getQueryString()被调用,我调用super.getQueryString()并计算我想要的结果并将其保存在字段中,然后返回它.下次,我只使用缓存的结果.

除非有一些"转发",否则这种方法就像魅力一样.转发请求时,Tomcat会替换原始请求,因此我的缓存查询字符串不会更改,转发的页面将获取原始查询字符串,而不是转发到的字符串.

覆盖setRequest()清除缓存的方法也无济于事,好像请求被包装两次一样,它调用setRequest内包装器(不是我的),我无法知道它何时发生.

我正在寻找一种在包装的请求层次结构发生变化时得到通知的方法,以便在有"转发"时我可以清除缓存.

java tomcat servlets forwarding wrapper

3
推荐指数
1
解决办法
3489
查看次数

在Lucene中,如何判断IndexSearcher或IndexWriter是否在另一个线程中使用?

Lucene文档指出,IndexSearcher和IndexWriter的单个实例应该用于整个应用程序中的每个索引,以及所有线程.此外,在重新打开索引之前,对索引的写入将不可见.

所以,我试图在多线程设置中遵循这些指南.(一些线程编写,多个用户线程搜索).我不想在每次更改时重新打开索引,而是希望保持搜索器实例不超过一定的时间(比如20秒).

中央组件负责打开索引读取器和编写器,并保留单个实例并同步线程.我跟踪上次任何用户线程访问IndexSearcher的时间,以及它变脏的时间.如果有人需要在更改过去20秒后访问它,我想关闭搜索器并重新打开它.

问题是我不确定先前对搜索者(由其他线程制作)的请求是否已经完成,因此我可以关闭IndexSearcher.这意味着如果我关闭并重新打开在所有线程之间共享的单个IndexSearcher实例,则可能会在其他某个线程中同时进行搜索.

更糟糕的是,这是理论上可能发生的事情:可以同时执行多次搜索.(假设有数千名用户在同一索引上运行搜索).单个IndexSearcher实例可能永远不会被释放,因此可以关闭它.理想情况下,我想创建另一个IndexSearcher并将新请求指向它(虽然旧的仍然打开并运行之前已请求的搜索).当旧实例上运行的搜索完成后,我想关闭它.

同步IndexSearcher(或IndexWriter)的多个用户以调用close()方法的最佳方法是什么?Lucene是否为此提供任何功能/设施,或者它应该完全由用户代码完成(比如使用搜索器计算线程,并在每次使用时增加/减少计数)?

有关于上述设计的任何建议/想法吗?

java lucene concurrency multithreading synchronization

2
推荐指数
1
解决办法
3491
查看次数