[Java lista] soap
Maglódszki Viktor
bocios at citromail.hu
2007. Ápr. 5., Cs, 14:11:52 CEST
sziasztok
isméte beleütköztem egy soap-os gondba.
van 1 alkalmazás ami:
php - soap - java
igy megy át szerveroldalról soapon keresztül a java-s kliens programba az adatbázisból lejött adat
2db olyan függvényem van php-ben ami tömböt ad vissza és ezt én java-ban hashmap tipusúnak veszem ki
ez igy rendben működik
most irtam ugyanezen az elven egy 3. olyat, ami tömböt használ
és egy teljesen ismeretlen hibaüzit kapok:
exception:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: Allowed memory size of 8388608 bytes exhausted (tried to allocate 43 bytes)
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:Allowed memory size of 8388608 bytes exhausted (tried to allocate 43 bytes)
Allowed memory size of 8388608 bytes exhausted (tried to allocate 43 bytes)
ilyet még sosem kaptam
valami memória megtelt vagy ilyesmi?
ebben a függvényben megint csak 1 szimpla sql select van 5db mezőt vesz ki, beteszi egy tömbe és visszaadja azt
pontossan úgy csináltam mint azt a 2-t ami már működik
csak ezzel van gond
az sql simán lefut kipróbáltam
sőt php-s kliensből az egész fügvény jó
php-s soap kliensnek rendesen visszaadja azt, ami kell nekem
ezen kivűl az összes többi java-ban is rendben
java:
private Call initialize(String opName) throws ServiceException {
call = (Call)service.createCall();
if (this.endPoint != null) {
call.setTargetEndpointAddress(this.endPoint);
}
if (opName != null) {
call.setOperationName(new QName(BODY_NAMESPACE_VALUE,opName));
}
call.setReturnType(QNAME_TYPE_STRING); //alapbol jo a string, ahol valtozik ott a metoduson belul van atirva
return call;
}
//a hiba fv:
public HashMap getDatasfiltered(String pid, String uid, String dateFrom, String dateTo) throws ServiceException, RemoteException {
Call call = initialize("getDatasFiltered");
call.setReturnType(QNAME_TYPE_STRING, HashMap.class);
call.addParameter("pid", QNAME_TYPE_STRING, ParameterMode.IN);
call.addParameter("uid", QNAME_TYPE_STRING, ParameterMode.IN);
call.addParameter("datefrom", QNAME_TYPE_STRING, ParameterMode.IN);
call.addParameter("dateto", QNAME_TYPE_STRING, ParameterMode.IN);
String params[] = {pid,uid,dateFrom,dateTo};
Object o = call.invoke(params);
return (HashMap)o;
}
php:
function getDatasFiltered($pid,$uid,$datefrom,$dateto) {
$data = array();
$k = 0;
$query = mysql_query("select worklog.status, worklog.chg_type, worklog.chg_time, worklog.logtype, worklog.remark from kmslive_worklog worklog, kmslive_users users where (users.id=$uid) and (worklog.user_id = $uid) and (worklog.project_id = $pid) and (worklog.chg_time >= '$datefrom' and worklog.chg_time <= '$dateto') order by worklog.chg_time");
if ($query) {
if (mysql_num_rows($query) > 0) {
while ($fetch = mysql_fetch_array) {
$data[$k]["status"] = $fetch["status"];
$data[$k]["chg_type"] = $fetch["chg_type"];
$data[$k]["chg_time"] = $fetch["chg_time"];
$data[$k]["logtype"] = $fetch["logtype"];
$data[$k]["remark"] = $fetch["remark"];
$k++;
}
return $data;
}
}
}
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20070405/5f4bf207/attachment.html
További információk a(z) Javalist levelezőlistáról