Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从PHP向Web服务发送HashMap参数_Java_Php_Web Services_Hashmap_Nusoap - Fatal编程技术网

Java 从PHP向Web服务发送HashMap参数

Java 从PHP向Web服务发送HashMap参数,java,php,web-services,hashmap,nusoap,Java,Php,Web Services,Hashmap,Nusoap,事实上,问题不在于如何做到这一点,而是如果这是一个设计错误。我很担心,因为我读过很多关于在WS中只使用标准数据类型的文章。然而,我实现一个接收HashMap的函数并用nuSoap从PHP填充该参数并没有问题 我有一个ParameterBean类,其中包含这个成员(当然还有getter和setter),其中包括一个HashMap private int ID; private String value; private String name; private HashMap<Integer

事实上,问题不在于如何做到这一点,而是如果这是一个设计错误。我很担心,因为我读过很多关于在WS中只使用标准数据类型的文章。然而,我实现一个接收HashMap的函数并用nuSoap从PHP填充该参数并没有问题

我有一个ParameterBean类,其中包含这个成员(当然还有getter和setter),其中包括一个HashMap

private int ID;
private String value;
private String name;
private HashMap<Integer, String> map = new HashMap<Integer, String>();

它就像一个符咒!问题是:这是不赞成的吗?这是否会在将来以某种方式导致头痛?

HashMap是一种非常危险的标准数据类型,在web服务中使用时应该不会出现问题

正如您所看到的,PHP和Java处理哈希映射都没有问题。支持它们(尽管它们被称为“对象”,并且没有Java的显式类型)


虽然真正深奥的数据类型可能会给预期可广泛互操作的web服务带来问题,但哈希映射不属于这一类别,因此应该放心使用。

谢谢您的回答。那么什么才是“真正深奥的数据类型”@FedericoCristina树或图形数据结构之类的东西肯定不适合在web服务中使用。通过真正深奥的方式,我想到了更多类似的东西,它们在JSON/XML中没有自然的表示,需要对WS-transmission进行非平凡的反序列化。太棒了!谢谢你的帮助!;)
$map = array(1 => 'Foo', 2 => 'Bar');
$paramsp = array(
    'ID' => '1',
    'value' => 'Some Value',
    'name' => 'A Name',
    'map' => $map
);
$params = array($paramsp);
$resp = $client->call('test',$params);
print_r($client->response);