小编Joe*_*oel的帖子

HTTP请求中的无限重定向循环

尝试获取时,我从URLConnection获得了太多重​​定向重定向错误 www.palringo.com

    URL url = new URL("http://www.palringo.com/");      
    HttpURLConnection.setFollowRedirects(true);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    System.out.println("Response code = " + connection.getResponseCode());
Run Code Online (Sandbox Code Playgroud)

输出可怕的:

Exception in thread "main" java.net.ProtocolException: Server redirected too many  times (20)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

据wget的只有一个重定向,从www.palringo.comwww.palringo.com/en/gb/

任何想法为什么我的请求使用URLConnection /en/gb导致相同资源的另一个302响应?

问题的例子如下:

    URL url = new URL("http://www.palringo.com/en/gb/");        
    HttpURLConnection.setFollowRedirects(false);
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    // Just for testing, use Chrome header, to eliminate "anti-crawler" response!
    connection.setRequestProperty("User-Agent", "Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.30 (KHTML, like Gecko) Ubuntu/11.04 Chromium/12.0.742.112 Chrome/12.0.742.112 Safari/534.30");
    System.out.println("Response code = …
Run Code Online (Sandbox Code Playgroud)

java url redirect http

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

绕过TCP-IP堆栈

我意识到这是一个有点开放的问题......

在低延迟应用程序的上下文中,我听到了绕过TCP-IP堆栈的引用.

这是什么意思,并假设您在网络上有两个需要交换消息的进程,这样做的各种选项(和相关的权衡)是什么?

performance network-programming tcp

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

将HTMLDocument转换为可打印的字符串

我想将Javascript DOM HTMLDcument转换为可以写入文件的字符串.但是如何将HTMLDocument的字符串转换为xml?!

更新如果可能的话,我希望看到在应用任何动态javascript渲染后生成的html.

javascript dom

4
推荐指数
2
解决办法
8882
查看次数

正确使用destructuring-bind

我正在尝试使用destructuring-bind,如下所示:

(destructuring-bind
           (a  b) '(1  2) (list a b)))
Run Code Online (Sandbox Code Playgroud)

当我在REPL中评估这个时,我得到:

READ from #1=#<INPUT STRING-INPUT-STREAM>: an object cannot start with #\)
   [Condition of type SYSTEM::SIMPLE-READER-ERROR]
Run Code Online (Sandbox Code Playgroud)

我期待结果

(1 2)
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,错误对我没有任何意义.

我意识到我只是绑定一个简单的参数列表,而不是一棵树,但我仍然希望它可以工作.关于我哪里出错的任何线索?

lisp common-lisp

4
推荐指数
2
解决办法
3618
查看次数

SB-KERNEL:TWO-ARG - 在调试器回溯中使用时意味着什么?

我(新手)调试我的Lisp代码(Common Lisp,Steel Bank,SLIME).

我的回溯中的第一帧是:

0: (SB-KERNEL:TWO-ARG-> 1 NIL)
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  • 什么"SB-KERNEL:TWO-ARG"意味着/检查/做什么?
  • 我自己应该在哪里上网?(我尝试搜索它但除了在其他Backtrace输出中找不到任何引用).

lisp sbcl common-lisp

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

如何在数组中实现链表?

这个问题提到可以在数组中实现链表。

虽然我可以想象如何使用多个阵列执行此操作,但是如何使用单个阵列执行此操作?

编辑:这样做是否可以有效地考虑到将需要从列表中删除并插入项目-大概需要标识数组中的自由元素?

data-structures

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

SQL:具有动态列值赋值的update语句

想象一下以下sql查询:

UPDATE MYTABLE
SET COL2 = (SELECT COL2 + 1 FROM (SELECT MAX(COL2) FROM MYTABLE) AS X)
WHERE ID IN (1,2,3,4,5)
Run Code Online (Sandbox Code Playgroud)

假设在执行更新之前MAX(COL2)为1.

我的意图是,对于更新,其中ID = 1,COL2更新为'max(COL2)+ 1'(即2),并且对于后续更新'MAX(COL2)+ 1'进行重新评估,以便对于ID = 2,COL2 = 3,ID = 3,COL2 = 4等...

实际发生的是,对于所有行(ID = 1,2,3,4,5),COL2的值为2.

有没有一种聪明的方法可以在每次更新时重新评估MAX(COL2)+1"的值"?我意识到这样做可能存在性能问题,但我很好奇!有没有更好的替代方案(不涉及多个更新语句)?

BTW:如果您想知道上面查询使用的语法(嵌套内部表),请参见此处:SQL:在嵌套FROM子句中的UPDATE语句中使用目标表

mysql sql sql-update

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

是否缺少第三方库阻止您使用Scala?

我前几天开始学习Scala.至于语言本身,我认为这很棒,没有任何问题.为了帮助我学习过程,我为自己设置了一个任务,从HTML页面下载,解析和索引文本.

在执行上述操作时,我发现自己不断深入研究现有的Java库.我发现我必须使用Java库来:

1)打开连接 - java.net.URL

2)解析HTML(TagSoup - 因为普通的XML解析器不能处理最糟糕的HTML)

3)索引文本(Lucene)

鉴于我不得不依靠Java库来完成相当多的繁重工作,我不知道是否值得我使用Scala开始,除了作为一个学习练习.这部分是由于需要一些额外的心理努力才能在两者之间进行映射,例如,字体[]的Scala类型不是直观明显的,因为Scala中的所有东西都是对象.这是额外的心理处理,可以使这个过程看起来有点笨重.

是否有人认为较少的第三方库(与Java相比)是在商业项目中使用Scala的障碍?

如果你可以调用现有的Java库,那么它是否重要,或者在代码库中不得不跨越两种不同的语言会让它变得更难?

java scala libraries

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

XSLT转换中的动态doctype(正确使用结果文档指令)

我正在使用XSLT,需要根据参数在转换后的输出中动态生成doctype.我听说使用XSLT 1.0无法做到这一点,但使用结果文档标签可以使用版本2.0 .

到目前为止,从这个问题的答案,我有这样的事情:

    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
    <xsl:output method="html" indent="yes"/>
    <xsl:param name="doctype.system" select="'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'" />
    <xsl:param name="doctype.public" select="'-//W3C//DTD XHTML 1.0 Strict//EN'" />
    <xsl:template match="/">
    <xsl:result-document doctype-public="{$doctype.public}" doctype-system="{$doctype.system}" method="html">
       <html>
          <head>
            <xsl:apply-templates select="report/head/node()"/>
          </head>
          <body>
             <!-- ommitted for brevity -->
          </body>
       </html>
    </xsl:result-document>
    </xsl:template>
    </xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

上面的问题是没有产生输出!

如果我从上面删除结果文档标记,则应用我的转换并按预期输出文档.

有线索吗?我正确使用结果文档标签吗?


更新:回应这里的一些评论是一个有效的小版本,一个没有的版本(省略结果文档指令的参数化)

这有效(没有结果文件):

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="html" indent="yes"/> 
<xsl:template match="/">
   <html>
      <head>

      </head>
      <body>

   </body>
   </html>   
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

输出:

<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body></body> …
Run Code Online (Sandbox Code Playgroud)

xslt xslt-2.0

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

使用XSLT 2.0从XSL转换输出最小化标记

我正在使用br像这样的mimimized 标签转换XML文档:

<br/>
Run Code Online (Sandbox Code Playgroud)

我正在使用Saxon 9,并输出为XHTML

<xsl:output method="xhtml" indent="yes" use-character-maps="html-chars"/>
Run Code Online (Sandbox Code Playgroud)

我从文档中得到的结论是,在使用XSLT时,序列化程序必须使用最小化的标记结尾(如果标记体是空的,它是),但是我总是在输出中得到这个:

<br></br>
Run Code Online (Sandbox Code Playgroud)

关于为什么会出现这种情况的任何线索,以及我如何强制它以最小化的形式输出:

<br/>
Run Code Online (Sandbox Code Playgroud)

xslt xhtml saxon xslt-2.0

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

在另一个向量中设置的索引处初始化1的向量

给出一个向量:

v1 = [1 ; 3; 5]
Run Code Online (Sandbox Code Playgroud)

并且无需使用一个循环,你怎么可以创建一个新的载体v2 of length n 有:

如果v2的索引在v1中,则v2的每个元素设置为1,否则设置为0.

所以例如,鉴于上面的v1,n = 8我希望v2有值:

v2 = [1; 0; 1; 0; 1; 0; 0; 0]
Run Code Online (Sandbox Code Playgroud)

matlab octave

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

读取ZIP文件会产生"无效的LOC标头"异常

我有一个大的zip文件,4.3G.它包含大约100k条目.我在Linux上使用Java 1.6.0_14,Ubuntu 32位读取它,并获得以下异常.

java.util.zip.ZipException: invalid LOC header (bad signature)
        at java.util.zip.ZipFile.read(Native Method)
        at java.util.zip.ZipFile.access$1200(ZipFile.java:29)
        at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:447)
        at java.util.zip.ZipFile$1.fill(ZipFile.java:230)
        at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:141)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
        at java.io.FilterInputStream.read(FilterInputStream.java:90)
Run Code Online (Sandbox Code Playgroud)

我没有任何其他ZIP文件的问题(处理它们的代码非常成熟)我已经验证我可以使用'unzip'从命令行正确解压缩zip文件.

有线索吗?谢谢!

java zip

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