vilvic
29-11-07, 23:52
Hi,
I think I've solved the java service creation problem. The problem appears to be quite simple and it appears to be in the WSDL (ProductServeService.xml) at fault.
In the the definition of the ArrayOfInt and ArrayOfString the arrayType should be defined wsdl:arrayType="xsd:int[]" and wsdl:arrayType="xsd:string[]" respectively.
What I've done for now is store the WSDL file locally. I've not been able to test it properly as I now get another problem but this is a quota problem.
AxisFault
faultCode: {http://api.productserve.com/}Client.LIMIT_1
faultSubcode:
faultString: Insufficient Quota
faultActor: http://vz8api.productserve.com/
faultNode:
faultDetail:
{http://api.productserve.com/}ApiException:<ns1:message>You have used all your operations quota</ns1:message>
Insufficient Quota
It seems that if you don't supply the UserAuthentication it complains yet if you don't provide getQuotaRequest it doesn't mind. You can put anything in the UserAuthentication and it just comes up with the error above. Heaven knows if it's actually being authenticated. Unless I have actually used my quota and it's checking the quota for my userId before it checks the password? :confused:
I think the error handing on the server side isn't responding with proper error messages. If I've got something wrong I'd like to be told and not come up with a message not related to the actual problem. At least that's what I'm thinking now. I think the server side needs some work because there seems to be inconsistencies between the API document and WSDL. This API should still be in beta because there are still so many problems. Sure the PHP works because it seems you can throw anything into a variable and it's happy - java however is a lot more strict.
I think I've solved the java service creation problem. The problem appears to be quite simple and it appears to be in the WSDL (ProductServeService.xml) at fault.
In the the definition of the ArrayOfInt and ArrayOfString the arrayType should be defined wsdl:arrayType="xsd:int[]" and wsdl:arrayType="xsd:string[]" respectively.
What I've done for now is store the WSDL file locally. I've not been able to test it properly as I now get another problem but this is a quota problem.
AxisFault
faultCode: {http://api.productserve.com/}Client.LIMIT_1
faultSubcode:
faultString: Insufficient Quota
faultActor: http://vz8api.productserve.com/
faultNode:
faultDetail:
{http://api.productserve.com/}ApiException:<ns1:message>You have used all your operations quota</ns1:message>
Insufficient Quota
It seems that if you don't supply the UserAuthentication it complains yet if you don't provide getQuotaRequest it doesn't mind. You can put anything in the UserAuthentication and it just comes up with the error above. Heaven knows if it's actually being authenticated. Unless I have actually used my quota and it's checking the quota for my userId before it checks the password? :confused:
I think the error handing on the server side isn't responding with proper error messages. If I've got something wrong I'd like to be told and not come up with a message not related to the actual problem. At least that's what I'm thinking now. I think the server side needs some work because there seems to be inconsistencies between the API document and WSDL. This API should still be in beta because there are still so many problems. Sure the PHP works because it seems you can throw anything into a variable and it's happy - java however is a lot more strict.