小编JFK*_*JFK的帖子

将键盘事件附加到HTML中的SVG元素

无论如何在浏览器中在HTML中运行SVG时,是否将textInput或keypress(或实际上任何其他文本输入)事件附加到SVG元素?

我可以将一个eventhandler附加到document.documentElement,但是当我通过任何机制将一个eventhandler附加到anykind的SVGElement时没有任何反应... svg,g,rect ...

我从SVG规范中看到这不支持(W3 SVG事件列表),但是任何浏览器都支持任何"额外"吗?

我无法让以下内容在Chrome或Firefox上运行...

<!DOCTYPE HTML>
<html>
<head>
<title>Key event test</title>
<style type="text/css">
body,html {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    background: #f00;
}

#main {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 80%;
    background: #0f0;
    float: right;
}

#drawArea {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
    background: #ffffff;
}

#side {
    margin: 0;
    padding: 0;
    height: 100%;
    width: 20%;
    background: #00f;
    float: left;
}


</style>
<script type="text/javascript">

    function createBoundEventHandler(el, name) …
Run Code Online (Sandbox Code Playgroud)

javascript svg dom-events

7
推荐指数
2
解决办法
7747
查看次数

如何解析Metro下的MTOM附件的入站邮件,而不会提取所有附件数据?

使用JAX-WS-RI或Metro我可以使用com.sun.xml.ws.api.server.AsyncProvider接口编写WebService.

我可以选择获取整个消息,包括SOAP标头

import javax.xml.transform.Source;
import com.sun.xml.ws.api.server.AsyncProvider;
import com.sun.xml.ws.api.server.AsyncProviderCallback;

import javax.xml.ws.ServiceMode;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.WebServiceProvider;


@ServiceMode(value=Service.Mode.MESSAGE)
@WebServiceProvider()
public class AddNumbersAsynchImpl implements AsyncProvider<Source> {
...
Run Code Online (Sandbox Code Playgroud)

然后,我可以编写一些解析消息并相应处理的内容

public void invoke(Source source, AsyncProviderCallback<Source> cbak, WebServiceContext ctxt) {
        DOMResult dom = new DOMResult();
        Transformer trans = TransformerFactory.newInstance().newTransformer();
        trans.transform(source, dom);

        XPath xpath = XPathFactory.newInstance().newXPath();
        xpath.setNamespaceContext(new MyNamespaceContext());

        String opName = (String) xpath.evaluate("name(/S:Envelope/S:Body/X:*[1])", dom.getNode(), XPathConstants.STRING);

        if(knownOp(opName)) {
            doOp(opName, dom.getNode(), cbak);
        }
        else {
            doFault("Unknown operation " + opName, cbak);
        }

}
Run Code Online (Sandbox Code Playgroud)

但是,这样做的部分原因是使现有的基于XML的应用程序适应SOAP堆栈.应用程序为消息定义了一组完整的模式,并且很容易生成WSDL来定义服务.

对于小型XML消息,一切正常.

但是,如果我希望在一些消息笨重的操作中以更流的方式处理XML,我会遇到使用MTOM附件的两个问题.我按以下方式更改了我的提供商的设置;

import com.sun.xml.ws.api.message.Message;
import javax.xml.ws.soap.MTOM; …
Run Code Online (Sandbox Code Playgroud)

java mtom jax-ws xop

6
推荐指数
0
解决办法
3912
查看次数

在由Java JAXB注释类生成的模式中生成XSD限制

MOXy BeanValidation使我能够为我的JAXB类添加验证.

使用MOXy的"Bean Validation Plugin"我可以根据来自现有 Schema的限制/方面在生成的JAXB类中进行Bean Validation .

但是有没有办法根据来自JAXB注释的java类的 Bean Validation注释生成带有限制/方面的模式

XJC在执行'schema first'生成java时有一个方便的插件架构,但有没有任何等效的'java first'方法来增强生成的XSD带有额外的限制,甚至添加XML注释?在MOXy或JAXB-RI中?

MOXy非常灵活,可以在中间映射中使用,可以在模式生成期间使用吗?

JAXB刻面的项目似乎做我想要什么,但实施者不得不叉一个全新JAXB-RI在得到它,它似乎不会很快通过的任何时间.(见这个Java JIRA)


我尝试了@ m0mus指定的分辨率,但必须使用sonatype存储库中的2.7.0-SNAPSHOT版本.我还有几个问题; 1.我必须用@XmlElement注释java字段以使facet出现在xsd中.@XmlAttribute,@ XmlAccessorType(XmlAccessType.FIELD)没有任何区别.@Pattern没有用; 我不得不在Pattern.List中使用单个Pattern.

@XmlElement
@Pattern.List(value = { @Pattern(regexp="[0-9]*") })
public String phoneNumber2;
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅EclipseLink论坛

java xsd jaxb moxy

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

标签 统计

java ×2

dom-events ×1

javascript ×1

jax-ws ×1

jaxb ×1

moxy ×1

mtom ×1

svg ×1

xop ×1

xsd ×1