axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William Chou (JIRA)" <axis-c-...@ws.apache.org>
Subject [jira] Commented: (AXISCPP-1046) WSDD - Error occurs when deploy web services using AdminClient and AdminService!
Date Fri, 22 Feb 2008 03:12:19 GMT

    [ https://issues.apache.org/jira/browse/AXISCPP-1046?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12571267#action_12571267
] 

William Chou commented on AXISCPP-1046:
---------------------------------------

nadir amra, thanks for your reply.

I check out the latest source code from svn. And viewed the source files I mentioned before.
I find out that WSDDDeployment.cpp file is already resolved. But in the first problem I mentioned
before (in function WSDDDocument::WSDDMemBufInputStream::getBytes() on file WSDDDocument.cpp),
the value of *piRetSize is still unupdated. Is this normal? Thanks again!

> WSDD - Error occurs when deploy web services using AdminClient and AdminService!
> --------------------------------------------------------------------------------
>
>                 Key: AXISCPP-1046
>                 URL: https://issues.apache.org/jira/browse/AXISCPP-1046
>             Project: Axis-C++
>          Issue Type: Bug
>          Components: WSDD Processing
>    Affects Versions:  1.6 Beta
>         Environment: Windows XP SP2, Apache 2.0.63, SimpleAxisServer, Visual C++ 8.0
>            Reporter: William Chou
>
> When I built Axis-C++ with my own. I tested the samples, everything worked fine.
> But when I decided to deploy a web service using AdminClient and AdminService. It turned
out to be an error.
> So I debugged the programs on my own.
> And I found out that when the programs runs to the following function, some value doesn't
set well.
> AXIS_TRANSPORT_STATUS WSDDDocument::WSDDMemBufInputStream::getBytes(char* pcBuffer, int*
piRetSize) on file %AXISCPP_ROOT%\src\wsdd\wsdddocument.cpp at line 257.
> The following lines are here:
> 278:	int nBufLen = strlen(m_pcWSDDMemBuffer);
> 279:	if (0 == nBufLen) 	{
> 280:		#ifdef ENABLE_AXISTRACE
> 281:			AXIS_TRANSPORT_STATUS traceRet = (TRANSPORT_FINISHED);
> 282:			if (axiscpp::AxisTrace::isTraceOn())
> 283:				axiscpp::AxisTrace::traceExit("WSDDDocument", "getBytes", NULL, 2,
> 284:					TRACETYPE_DATA, sizeof(AXIS_TRANSPORT_STATUS), ((void*)&traceRet));	  /*
AUTOINSERTED TRACE */
> 285:			return traceRet;
> 286:		#else
> 287:			return TRANSPORT_FINISHED;
> 288:		#endif
> 289:	}
> 290:
> 291:	nBufLen = ((*piRetSize - 1) < nBufLen) ? (*piRetSize - 1) : nBufLen;
> 292:	strncpy(pcBuffer, m_pcWSDDMemBuffer, nBufLen);
> 293:	pcBuffer[nBufLen] = 0;
> 294:	m_pcWSDDMemBuffer+=nBufLen;
> So I added the following line after line 279:
> 	*piRetSize = nBufLen;
> and the same line after line 294. 
> It works for the first time. I opened the server.wsdd file for view and found out that
the wsdd file was not a valid xml file. So I debug it again and found out the following lines
on file WSDDDeployment.cpp at lines 255 - 258:
> 255:        if (fputs("<deployment xmlns=\"http://xml.apache.org/axis/wsdd/\
> 256:            \" xmlns:C=\"http://xml.apache.org/axis/wsdd/providers/C\" xmlns:\
> 257:            CPP=\"http://xml.apache.org/axis/wsdd/providers/CPP\">\n",
> 258:            file) < 0) break;
> So I modified these lines as following:
> 255:        if (fputs("<deployment xmlns=\"http://xml.apache.org/axis/wsdd/"
> 256:            "\" xmlns:C=\"http://xml.apache.org/axis/wsdd/providers/C\" xmlns:"
> 257:            "CPP=\"http://xml.apache.org/axis/wsdd/providers/CPP\">\n",
> 258:            file) < 0) break;
> Everything works fine. Is this a problem?
> BTW: The AdminClient and AdminService projects files are out of date. Some functions
are no longer the original. But these are minor problems. So I can easily change the source
code to works fine.
> Thanks for your help!

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


Mime
View raw message