小编Em *_* Ae的帖子

Apache HttpClient临时错误:NoHttpResponseException

我有一个web服务,它接受一个带有XML的POST方法.它工作正常,然后在一些随机的场合,它无法与服务器通信抛出IOException与消息The target server failed to respond.后续调用工作正常.

它主要发生在我打电话然后让我的应用程序闲置10-15分钟时.我之后的第一个调用会返回此错误.

我尝试了几件事......

我设置重试处理程序就像

HttpRequestRetryHandler retryHandler = new HttpRequestRetryHandler() {

            public boolean retryRequest(IOException e, int retryCount, HttpContext httpCtx) {
                if (retryCount >= 3){
                    Logger.warn(CALLER, "Maximum tries reached, exception would be thrown to outer block");
                    return false;
                }
                if (e instanceof org.apache.http.NoHttpResponseException){
                    Logger.warn(CALLER, "No response from server on "+retryCount+" call");
                    return true;
                }
                return false;
            }
        };

        httpPost.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, retryHandler);
Run Code Online (Sandbox Code Playgroud)

但这次重试从未被召唤过.(是的,我正在使用right instanceof子句).虽然调试这个类永远不会被调用.

我甚至尝试过设置HttpProtocolParams.setUseExpectContinue(httpClient.getParams(), false);但没有用.有人可以建议我现在能做什么吗?

重要 除了弄清楚为什么我得到例外之外,我所关注的一个重要问题是为什么重试操作员不在这里工作?

java httpclient

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

PropertyDefinition不一致

我有以下模板,我在cloudformation UI中使用它来创建dynamoDB表.我想创建一个表,其中PrimaryKeyID,sortKeyValue

{
  "AWSTemplateFormatVersion" : "2010-09-09",

  "Description" : "DB Description",

  "Resources" : {
    "TableName" : {
      "Type" : "AWS::DynamoDB::Table",
      "Properties" : {
        "AttributeDefinitions": [ { 
          "AttributeName" : "ID",
          "AttributeType" : "S"
        }, { 
          "AttributeName" : "Value",
          "AttributeType" : "S"
        } ],
        "KeySchema": [
          { 
            "AttributeName": "ID", 
            "KeyType": "HASH"
          }
        ]                
      },
      "TableName": "TableName"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

在CF UI上,我单击新堆栈,template从本地计算机指向该文件,为堆栈命名并单击下一步.一段时间后,我收到错误,指出Property AttributeDefinitions与表的KeySchema和二级索引不一致

amazon-web-services aws-cloudformation amazon-dynamodb

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

Git推进远程分支

我试图关注这篇文章,但感到困惑,而不是让我的问题得到解决.

这是场景.

我创建了一个分支git checkout -b <branch_name>.然后,我做了一些改变,并做了

  1. git add .
  2. git commit -m "comment"

现在所有这些更改都在我未提交的本地<branch_name>分支中.我想要做的是将这些变化推向上游,但我想把它推到一个不存在的分支,例如,<branch_name>_test

我不想把它推给我<branch_name>.我怎么能这样做.

git

47
推荐指数
5
解决办法
14万
查看次数

从String创建URL

这是一个非常基本的问题.但我无法在Java文档中找到答案,也无法测试它,因为我不知道这种方法是否存在.

我可能会收到一个URL字符串

http://www.example1.com

要么

http://www.example1.com/

然后我将获得可能开始的资源路径/api/v1/status.xml或者它会是什么样的api/v1/status.xml

我正在查看URL类,我可以处理第一部分,即获取hostURL以使其成为HTTPS或HTTP请求.问题是附加资源路径.要么我必须手动检查它是否是第一个字母/.我想知道这个功能是否已经在某个类中.

java url http

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

无法运行android/sdk/build-tools/23.0.2/aapt

最近在Ubuntu 15上安装了Android Studio 1.0.1(由于某些原因的旧版本),我正在尝试创建一个新项目.每当我构建它时,我都会收到此错误

无法运行程序"/home/user/Android/Sdk/build-tools/23.0.2/aapt":error = 2没有这样的文件或目录"

该文件存在于那里.

ubuntu android android-sdk-tools android-studio ubuntu-15.04

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

在Java中获取我的文档路径

我需要使用Java找到我的文档路径.以下代码并没有给我"准确"的说明

System.getProperty("user.home");

相反应该是什么?

PS:我不想使用JFileChooser Dirty技巧.

java windows

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

将int添加到short

我的一位同事向我提出这个问题,我有点困惑.

int i = 123456;
short x = 12;
Run Code Online (Sandbox Code Playgroud)

该声明

x += i;
Run Code Online (Sandbox Code Playgroud)

编译但是很好

x = x + i;
Run Code Online (Sandbox Code Playgroud)

Java在这做什么?

java

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

编写shell脚本来安装cron作业

这是我第一次编写shell脚本,而且在给定的时间线中我的信息很少.虽然我正在阅读不同的教程,但我想在这里问我想要什么.

我想编写一个shell脚本,在任何机器上编辑cronjob,添加一个每15分钟执行一次的新脚本.所以基本上我必须添加一个条目

0,15,30,45 * * * * /home/personal/scripts/cronSqlprocedure.sh

我想要的shell脚本

  • 它首先会更改权限/执行权限 cronSqlprocedure.sh
  • 编辑现有的cron作业并将此新条目添加到其中.

如果可能的话,我也想通过shell脚本编写cronSqlprocedure,因为它需要几个变量,这些变量可能因系统而异.

export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=HEER
Run Code Online (Sandbox Code Playgroud)

必须为每台机器配置这些线路cronSqlprocedure.sh.

#!/bin/bash
ORACLE_HOME="/opt/app/oracle/product/11.2.0/dbhome_1"
ORACLE_SID="HEER"
ORACLE_USER="USER1"
ORACLE_PASSWORD="USERPASS"

echo "export ORACLE_HOME=$ORACLE_HOME" >> $PWD/sqlcronprocedure.sh
echo "export PATH=\$ORACLE_HOME/bin:\$PATH" >> $PWD/sqlcronprocedure.sh
echo "export ORACLE_SID=$ORACLE_SID" >> $PWD/sqlcronprocedure.sh
echo "rTmpDir=/tmp" >> $PWD/sqlcronprocedure.sh

echo "sqlplus -s $ORACLE_USER@$ORACLE_SID/$ORACLE_PASSWORD  > $rTmpDir/deleteme.txt 2>&1 <<EOF" >> $PWD/sqlcronprocedure.sh
echo "    select 1 from dual;" >> $PWD/sqlcronprocedure.sh
echo "    execute another_script(1000,14);" >> $PWD/sqlcronprocedure.sh
echo "EOF" >> $PWD/sqlcronprocedure.sh

chmod 755 $PWD/sqlcronprocedure.sh

crontab -l …
Run Code Online (Sandbox Code Playgroud)

linux bash shell cron

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

使用 XPATH 计算子节点

我有以下 XML

<orderList>
    <orderInfo orderId="xyz" returnCode="Pending" />
    <orderInfo orderId="yzz" returnCode="Shipped">
        <orderDetail shipped-date="xxxx-xx-xx xx:xx:xx">
            <order>
               ....
            </order>
        </orderDetail>
    </orderInfo>
</orderList>
Run Code Online (Sandbox Code Playgroud)

我想计算每个 orderDetail 项目下的订单数量...

我试过这个链接(XPath 来计算基于复杂过滤器的子节点)但它没有帮助

我想出了这条路

count(//orderList/orderInfo/orderDetail[count(order)])

xpath

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

Discord bot阅读反应

我需要实现一些功能,其中一个功能是实现轮询类型功能.由于某些政策,不能使用公共不和谐机器人,所以我们必须自己实施一些东西.昨天进行了一些研究,并且能够使用python3commandsapi 制作基本的机器人discord.ext.现在我需要弄清楚的是:

  1. 读取用户添加到消息中的反应?
  2. 创建一个带有反应的消息(比如创建反应民意调查的机器人?)
  3. 固定信息?
  4. 我相信ctx我可以得到user tags(管理员等).有没有更好的方法呢?

命令参考页面上找不到任何有用的东西,或者我正在查看错误的文档.任何帮助,将不胜感激.

谢谢


更新:谢谢你们.现在我被困在如何添加表情符号,这是我的代码

poll_emojis = {0: ':zero:', 1: ':one:', 2: ':two:', 3: ':three:', 4: ':four:'}

@client.event
async def on_message(message):
    if message.author == client.user:
        return

    if message.content.startswith('$create_poll'):

        poll_content = message.content.split('"')
        poll_text = poll_content[1]
        poll_options = []
        poll_option_text = ''
        count = 0
        for poll_option in poll_content[2:]:
            if poll_option.strip() != '':
                poll_options.append(poll_option)
                poll_option_text += '{0}: {1}\t'.format(poll_emojis[count], poll_option)
                count += 1

        posted_message = …
Run Code Online (Sandbox Code Playgroud)

python python-3.x discord discord.py

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