问题列表 - 第32223页

问题在servlet中读取请求体

我正在编写一个HTTP代理,它是测试/验证系统的一部分.代理过滤来自客户端设备的所有请求,并将它们引导到各种受测试的系统.

代理实现为servlet,每个请求都转发到目标系统,它处理GET和POST.有时,目标系统的响应会被改变以适应各种测试条件,但这不是问题的一部分.

转发请求时,将复制所有标头,但实际HTTP传输的标头除外,例如Content-Length和Connection标头.

如果请求是HTTP POST,那么请求的实体主体也会被转发,这里有时它不起作用.

从servlet请求中读取实体主体的代码如下:

URL url = new URL(targetURL);
HttpURLConnection conn  = (HttpURLConnection)url.openConnection();
String method = request.getMethod();

java.util.Enumeration headers = request.getHeaderNames();
while(headers.hasMoreElements()) {

    String headerName = (String)headers.nextElement();
    String headerValue = request.getHeader(headerName);

    if (...) { // do various adaptive stuff based on header 

    }

    conn.setRequestProperty(headerName, headerValue);
}
Run Code Online (Sandbox Code Playgroud)

//这里是失败的部分

char postBody[] = new char[1024];
int len;

if(method.equals("POST")) {
    logger.debug("guiProxy, handle post, read request body");
    conn.setDoOutput(true);

    BufferedReader br = request.getReader();
    BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));

    do {
        logger.debug("Read request into …
Run Code Online (Sandbox Code Playgroud)

java post servlets http tomcat6

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

寻找最好的Asp.net调查应用程序

请提供最佳Asp.Net调查申请的建议和源代码 - 商业广告是好的..

asp.net survey

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

class_getClassMethod经常返回nil(似乎只适用于类级别方法)

我目前正在尝试使用http://sudzc.com/中的一些生成代码. 这段代码并不完全适合我的Web服务,因此我尝试将类别添加到一些生成的类中,并使用原始类替换它们的实现来自"objc/runtime.h"的method_exchangeImplementations.(我可以直接修改生成的代码,但我想避免它).

这是我在MyAppAppDelegate中执行的代码 - applicationDidFinishLaunching方法

Class theClass = [CBMayaIPhoneUser class];
Method originalMethod = class_getClassMethod(theClass, @selector(initWithNode:));
Method categoryMethod = class_getClassMethod(theClass, @selector(initWithAllStringNode:));
method_exchangeImplementations(originalMethod, categoryMethod);

theClass = [Soap class];
originalMethod = class_getClassMethod(theClass, @selector(getNodeValue:withName:));
categoryMethod = class_getClassMethod(theClass, @selector(getHrefNodeValue:withName:));
method_exchangeImplementations(originalMethod, categoryMethod);

theClass = [SoapRequest class];
originalMethod = class_getClassMethod(theClass, @selector(send));
categoryMethod = class_getClassMethod(theClass, @selector(sendIgnoringCertificate));
method_exchangeImplementations(originalMethod, categoryMethod);
originalMethod = class_getClassMethod(theClass, @selector(connectionDidFinishLoading:));
categoryMethod = class_getClassMethod(theClass, @selector(connectionDidFinishLoadingAndSentBody:));
method_exchangeImplementations(originalMethod, categoryMethod);
Run Code Online (Sandbox Code Playgroud)

正如我的问题所述,几乎所有这些class_getClassMethod都返回nil ...我使用了调试器,所以我知道'theClass'是正确设置的.找到的唯一方法是Soap类,它们都是类级(+)方法.但是从网上的各种例子中我得出的结论是,它也适用于其他人......

以下是MyAppAppDelegate.m的包含:

#import "MyAppAppDelegate.h"
#import "RootViewController.h"
#import "MyGlobalVariables.h"
#import "MyWebServiceExample.h"
#import "Soap+Href.h"
#import "SoapRequest+Certificate.h"
#import "CBMayaIPhoneUser+AllString.h"
#import …
Run Code Online (Sandbox Code Playgroud)

implementation exchange-server objective-c-runtime ios-simulator

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

Apache commons文件上传替代品

我想知道Java File Upload API的StackOverflow用户过去使用过什么并建议使用?一个快速的谷歌搜索似乎表明最常用的API是Apache Commons文件上传(目前在1.2.1),但是,我们遇到了一些关于使用这个库的问题,我们无法使用更大的文件解决.

有没有人找到他们推荐的可靠的文件上传库(除了Apache Commons之外)?

编辑:Streaming API 不是一个选项,因为它使用导致我们问题的相同底层类.

编辑2:我们的原始问题似乎是负载平衡的某种问题.我们的克隆实例使用Apache/AJP1.3,实时实例使用Zeus XTM.使用服务器IP而不是主机名绕过负载均衡器似乎会导致问题消失.

编辑3:这结果是客户端防火墙的问题.看来他们是......呃..当他们说明确知道这不是防火墙问题时,并不是完全真实的.

java upload file-upload uploading

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

QFile/QDataStream写入现有数据

我有一个文件,据说长度为8个字节.例如它看起来像这样:

22222222

现在,我首先阅读让我们说5个字节并更改它们.对于前者 至11111

最后,我想将它们写入ONTO EXCISTING DATA到文件中,所以我希望文件看起来像这样:

11111222

但我只得到11111,因为文件被删除了.如何禁用删除?(也许这个问题存在,但无法找到像这样的问题)

c++ qt overwrite qfile

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

如何使用Json.net(C#)反序列化从Exception类派生的对象?

我正在尝试反序列化从Exception类派生的对象:

   [Serializable]
   public class Error : Exception, ISerializable
   {
    public string ErrorMessage { get; set; }
    public Error() { }
   }
Run Code Online (Sandbox Code Playgroud)

Error error = JsonConvert.DeserializeObject< Error >("json error obj string");

它给了我错误:

ISerializable类型'type'没有有效的构造函数.

c# serialization json.net

14
推荐指数
2
解决办法
7397
查看次数

测试整数加法中的溢出

可能重复:
在C/C++中检测整数溢出的最佳方法

我试图实现简单的程序,测试整数加法期间是否发生溢出:

#include <climits>
#include <iostream>
#include <string>

using namespace std;

string overflow(long a,long b){
    return ((a+b)>UINT_MAX)?"true":"false";
}

int main(){
    long a, b;
    cout << "enter a and b: ";
    cin >> a >> b;
    string m = overflow(a,b);
    cout << m;

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

UINT_MAX=65535 所以我输入了65535和20,但它写了错误为什么?

c++

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

如何自定义Wix进度对话框?

我试图自定义标准的WiX进度对话框(我想让它显示ActionData)。我遵循了Neil的自定义对话框指南,但是麻烦的是,原始的ProgressDlg仍在显示,而不是我的。

我想我知道为什么:如果您查看ProgressDlg源代码,则可以看到以下代码块:

   <InstallUISequence>
    <Show Dialog="ProgressDlg" Before="ExecuteAction" />
  </InstallUISequence>
Run Code Online (Sandbox Code Playgroud)

因此,它不是像大多数对话框那样由另一个对话框发布,而是作为InstallUISequence的一部分直接触发的。那么我该如何覆盖呢?

wix wix3.5

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

隐式类型如何使代码更清晰?

在我正在阅读的一本书中,它指出隐式类型使得以下代码比不使用var关键字时更清晰:

var words = new[] { "a", "b", null, "d" };

foreach (var item in words)
{
    Console.WriteLine(item);
}
Run Code Online (Sandbox Code Playgroud)

在我看来,情况正好相反:如果您使用了string,那么代码的读者会立即知道它是foreach循环中的字符串,而不必查找定义变量的代码.

隐式类型如何使上面的代码更清晰?

附录

这本书是C#3.0 - Die Neuerungen.schnell + kompakt是德语,实际文本是:

Das Schluesselwort var kann auch beim Durchlaufen von foreach-Schleifen verwendet werden,um somit den Code uebersichtlicher und einfacher zu gestalten.Besonders bei komplexen Typen kann man auf diese Art und Weise Programmierfehler verhindern.

这是我的翻译:

在遍历foreach循环时也可以使用var关键字,从而使代码更容易和更简单地创建.特别是在使用复杂类型时,这可以防止编程错误.

好吧,现在更仔细地阅读它,他实际上声明var在foreach循环中使代码更容易创建但不一定更容易阅读.

c# implicit-typing

10
推荐指数
4
解决办法
1387
查看次数

Delphi中的自动代码格式

我对VB.Net IDE中的自动代码格式化功能感到惊讶,当您键入一行代码然后将光标移离该行时,代码将自动缩进,并且将应用正确的文本类型案例,就像代码一样用编码标准格式化.是否有任何IDE专家,IDE插件等会让Delphi IDE做同样的事情?

delphi

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