小编Ted*_*Ted的帖子

javax StreamSource的目的是什么?

我正在解析一个作为InputStream读入的xml文档,我看到的一个例子是首先在javax.xml.transform.stream.StreamSource中对流进行分段.当我在读入流时解析流时,为什么会这样做?Java API的描述没有帮助:"以XML标记流的形式充当转换源的持有者."

StreamSource示例:

    XMLInputFactory xif = XMLInputFactory.newFactory();
    StreamSource reportStream = 
              new StreamSource(new URL("file:///myXmlDocURL.xml").openStream());
    XMLStreamReader xmlReader = xif.createXMLStreamReader(reportStream);
    xmlReader.nextTag();
    while (xmlReader.hasNext()) {
        if (xmlReader.getLocalName().equals("attributeICareAbout")) {
            String tempTagValue = xmlReader.getText();
            xmlReader.nextTag();
        }
    }
    xmlReader.close();
Run Code Online (Sandbox Code Playgroud)

没有StreamSource的示例:

    XMLInputFactory xif = XMLInputFactory.newFactory();        
    XMLStreamReader xmlReader = 
      xif.createXMLStreamReader(new URL("file:///myXmlDocURL.xml").openStream());
    xmlReader.nextTag();
    while (xmlReader.hasNext()) {
        if (xmlReader.getLocalName().equals("attributeIcareAbout")) {
            String tempTagValue = xmlReader.getText();
            xmlReader.nextTag();
        }
    }
    xmlReader.close();
Run Code Online (Sandbox Code Playgroud)

java xml

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

如何使用java PKCS#12密钥库中的证书来加密和解密文件?

任何人都可以解释如何使用存储在java'PKCS#12`密钥库中的证书来加密和解密文件?

java cryptography pkcs#12

9
推荐指数
2
解决办法
3万
查看次数

如何处理nginx反向代理https到http方案重定向

我已将 nginx 设置为托管 jenkins 和其他一些应用程序的 ubuntu 实例上的反向代理。我正在使用 nginx 根据相对路径路由到各种应用程序。从客户端到 nginx 的所有流量都通过 https。在防火墙后面,nginx 通过 http 将所有内容路由到配置的路径和端口号。它看起来像这样:

              firewall
                |
                |
--->https--->nginx---http--->jenkins
                |
                |
Run Code Online (Sandbox Code Playgroud)

nginx 配置文件的相关部分是这样的:

server {

    listen 443 ssl;

    ssl_certificate cert.crt;
    ssl_certificate_key cert.key;
    ssl_session_cache builtin:1000 shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;


    location /jenkins {

            proxy_set_header Host $http_host;
            proxy_set_header X-NginX-Proxy true;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_pass http://127.0.0.1:6969;
    }

}
Run Code Online (Sandbox Code Playgroud)

问题是 jenkins 使用简单的身份验证,并且在成功登录后,它会发送 302 重定向。Nginx 正确代理了 url 和端口,但不是方案。因此,客户端遵循 http 而不是 https 上的重定向。在浏览器中,我收到 400 错误:

400 Bad Request The …
Run Code Online (Sandbox Code Playgroud)

redirect nginx jenkins

8
推荐指数
2
解决办法
2万
查看次数

如何使用jsch以编程方式进行身份验证?

我想通过sftp将文件上传到远程服务器.我正在使用Jsch库.下面的代码有效,但我总是要通过输出控制台输入用户名和密码,即使我在Session对象中设置了这些值.我在Stack Overflow和Jsch示例页面上看到的每个示例都需要用户输入.有没有办法以编程方式传递密码?(我需要通过用户名/密码进行身份验证.我无法使用SSH密钥...)

    JSch jsch = new JSch();
    ChannelSftp sftpChannel;
    Session session;
    Channel channel;
    OutputStream os;

    try {

        session = jsch.getSession("myUsername", "myHost", 22);
        session.setPassword("myPassword");
        session.setConfig("StrictHostKeyChecking", "no");
        session.connect();

        channel = session.openChannel("sftp");
        channel.connect();
        sftpChannel = (ChannelSftp) channel;
        os = sftpChannel.getOutputStream();

    } catch (Exception e) {
    }
Run Code Online (Sandbox Code Playgroud)

java ssh jsch

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

为什么刷新Firefox不能反映javascript代码更改?

可能重复:
确保未在所有浏览器中缓存网页

我正在研究连接到dojo.store.Memory的简单dojo comboBox(dijit.form.ComboBox)。我在Firefox 10上使用了最新的Netbeans和Glassfish设置。我的问题是,当我更改或注释掉与组合框相关的代码时,在刷新网页时不会显示更改。我试过清理/构建,重新运行等,但是注释掉代码似乎无济于事。Firefox似乎正在运行页面的缓存版本,而不是呈现我所做的最新代码更改。我不需要每次刷新页面时都必须清除浏览器缓存。(我最终想要做的就是指示自动完成功能打开和关闭的时间。)有什么想法吗?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">                   
    <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" type="text/javascript" ></script> 
Run Code Online (Sandbox Code Playgroud)
    <script type="text/javascript">
        dojo.require("dijit.form.ComboBox");
        dojo.require("dojo.store.Memory");

        var myBox, store;
        dojo.ready(function(){makeComboBox();});

        function makeComboBox(){

            store = new dojo.store.Memory({
                data: [
                    {name:"Alabama", id:"AL"},
                    {name:"Alaska", id:"AK"},
                    {name:"American Samoa", id:"AS"},
                    {name:"Arizona", id:"AZ"},
                    {name:"Arkansas", id:"AR"},
                    {name:"Armed Forces Europe", id:"AE"},
                    {name:"Armed Forces Pacific", id:"AP"},
                    {name:"Armed Forces the Americas", id:"AA"},
                    {name:"California", id:"CA"},
                    {name:"Colorado", id:"CO"},
                    {name:"Connecticut", id:"CT"},
                    {name:"Delaware", id:"DE"}                        
                ]
            });                

            myBox = new dijit.form.ComboBox({                
                id: "stateSelect", …
Run Code Online (Sandbox Code Playgroud)

javascript firefox dojo netbeans

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

什么是dojo 1.7 AMD框架的好处?

我一直在阅读dojo 1.7加载器如何在这里这里使用AMD API /框架,我在其中一张幻灯片上看到了这句话:"AMD(最大)的好处是无法加载脚本正如一些人可能认为的那样,需求最大的好处是代码组织/模块化的增加以及对全局/命名空间的需求减少." 但我的问题是,使用普通的js函数不能避免全局变量,如果需要访问另一个函数的执行上下文(以及另一个函数的'私有'变量),可能还有dojo.hitch()吗?换句话说,除了异步加载你需要的东西之外,AMD框架的好处是什么?

javascript dojo

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

如何将值附加到StringBuilder数组

我正在解析十进制格式的网格坐标.我想将模式匹配存储在StringBuilder数组中以便进一步操作.但是,在每个while循环中调用append()时,我得到一个空指针.

String coordinateExample = "N14585928W084144340";
this.parseCoordinate(coordinateExample);
...

public void parseCoordinate(String coordinateString) {

    int i = 0;

    //extract NSEW leading characters
    Pattern pL = Pattern.compile("[A-Z]");
    Matcher m = pL.matcher(coordinateString);        
    StringBuilder[] hemisphere = new StringBuilder[]{};

    while (m.find()) {
        hemisphere[i].append(m.group());
        //System.out.println("m.group(): " + m.group());
        i++;
    }        
    // reset i
    i = 0;

    //extract decimal degree digits
    Pattern pN = Pattern.compile("[0-9]++");
    Matcher n = pN.matcher(coordinateString);
    StringBuilder[] coordinate = new StringBuilder[]{};

    while (n.find()) {            
        coordinate[i].append(n.group());
        //System.out.println("q.group(): " + n.group());
        i++;
    }
}
Run Code Online (Sandbox Code Playgroud)

java stringbuilder

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

查询多个计数语句

我想结合以下两个查询,以便最终得到三列:RelativePath,field = null/empty string,value with value.我可以单独执行查询,但是我很难将它们组合起来.

SELECT RELATIVEPATH, COUNT(RELATIVEPATH) FROM APP 
       WHERE (FIELD IS NULL) OR (FIELD = '')
       GROUP BY (RELATIVEPATH);

SELECT RELATIVEPATH, COUNT(RELATIVEPATH) FROM APP
       WHERE (FIELD IS NOT NULL) 
       GROUP BY (RELATIVEPATH);
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

ScheduledExecutorService只调用一个线程

我想从队列中提取多个文件并同时解析它们.但是,我的执行者只调用一个线程:

private static ScheduledExecutorService parsingExec ;
protected static BlockingQueue<Path> queue = new LinkedBlockingQueue<>();
int threadPoolSize = 10;
parsingExec = Executors.newScheduledThreadPool(threadPoolSize);
parsingExec.scheduleAtFixedRate(new MyParser(queue), 0, 0, TimeUnit.MILLISECONDS);
Run Code Online (Sandbox Code Playgroud)

java concurrency executorservice

0
推荐指数
1
解决办法
1557
查看次数

在实例化类字段时捕获异常

我想将URL实例化为类中的私有字段,但我无法捕获MalformedURLException.我尝试过使用静态初始化块,但这也不起作用.我该如何解决这个问题?

public class MyClass{ 

    private final static URL DEFAULT_URL = new URL("http://www.yadayada.com?wsdl")

    ...
}
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
2
解决办法
102
查看次数