axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Auzinger <tho...@auzinger.org>
Subject Impl object for service 'algorithm' not set in message receiver (Re: Have WSDL, want service (on windows))
Date Fri, 28 May 2010 21:28:20 GMT
OK, my algorithm.dll is built and I'm trying to call the service from Java.
 There is some communication, but the log looks like below and I get the
message:

         Impl object for service 'algorithm' not set in message receiver.109
:: Array list index out of bounds

What is the Impl object and why is it not found?

The generated service.xml looks like this:

<!-- This file was auto-generated from WSDL -->
<!-- by the Apache Axis2 version: 1.5.1  Built on : Oct 19, 2009 (10:59:00
EDT) -->
<service name="algorithm">
<parameter name="ServiceClass">algorithm</parameter>
<description>algorithm Service
            </description>
<operation name="measureECG" >
<parameter name="wsamapping">http://www.sample.com/algorithm/measureECG
</parameter>
</operation>
</service>

Thanks,

Thomas

[Fri May 28 17:04:21 2010] [debug]
..\..\src\core\transport\http\common\http_worker.c(200) Client HTTP version
HTTP/1.1
[Fri May 28 17:04:21 2010] [debug] ..\..\axiom\src\soap\soap_builder.c(930)
Identified soap version is soap11
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler request_uri_based_dispatcher within the phase Transport
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\req_uri_disp.c(100)
Checking for service using target endpoint address :
http://127.0.0.1:9090/axis2/services/algorithm
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\req_uri_disp.c(121)
Service found using target endpoint address
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler AddressingInHandler within the phase Transport
[Fri May 28 17:04:21 2010] [info]  Starting addressing in handler
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler addressing_based_dispatcher within the phase Transport
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler rest_dispatcher within the phase Dispatch
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler soap_message_body_based_dispatcher within the phase Dispatch
[Fri May 28 17:04:21 2010] [debug]
..\..\src\core\engine\soap_body_disp.c(231) Checking for operation using
SOAP messagebody's first child's local name : measureECG
[Fri May 28 17:04:21 2010] [debug]
..\..\src\core\engine\soap_body_disp.c(240) Operation found using SOAP
message body's first child's local name
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler soap_action_based_dispatcher within the phase Dispatch
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler dispatch_post_conditions_evaluator within the phase PostDispatch
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler context_handler within the phase PostDispatch
[Fri May 28 17:04:21 2010] [error]
..\..\src\core\receivers\raw_xml_in_out_msg_recv.c(115) Impl object for
service 'algorithm' not set in message receiver. 109 :: Array list index out
of bounds
[Fri May 28 17:04:21 2010] [debug] ..\..\src\core\engine\phase.c(210) Invoke
the handler AddressingOutHandler within the phase MessageOut
[Fri May 28 17:04:21 2010] [info]  Starting addressing out handler
[Fri May 28 17:04:21 2010] [debug]
..\..\src\modules\mod_addr\addr_out_handler.c(133) No action present. Stop
processing addressing
[Fri May 28 17:04:22 2010] [info]  Request served successfully


On Fri, May 28, 2010 at 10:44 AM, Sam Carleton
<scarleton@miltonstreet.com>wrote:

> Thomas,
>
> Yea, you are going to have to tinker with the code a bit.  It does put in
> some artifacts that VS2008/VS2010 doesn't much like.
>
> What I did was this:
>
>    1. Put the generated code into a physical folder of it's own, separate
>    from the rest of my source code.
>    2. Figured out what needed to be added/removed to the generated code
>    3. ONLY added/removed what needed to change, otherwise zero formatting
>    changes.
>    4. When I change the WSDL, I generate the code to a temp location
>    different from #1's location
>    5. Then I do a folder compare, add the new things and replace the
>    things that have changed except for the files I tweaked in 2/3 (normally
>    only the main file), this I do a manual line by line diff.  The reason for
>    not doing ANY formatting changes in #3 is so that this diff will only show
>    what has REALLY changed and it is easy to spot your changes from the
>    WSDL2C's changes.
>
> I use this simply outstanding program called Beyond Compare<http://www.scootersoftware.com/>to
do the folder/file compare.  I highly recommend it!
>
> Sam
>
>
> On Fri, May 28, 2010 at 10:02 AM, Thomas Auzinger <thomas@auzinger.org>
> wrote:
> > I created the source code using:
> > wsdl2c -d adb -u -ss -uri algorithm.wsdl
> > This works almost, but I get two errors from Visualstudio 10 (VS6 can't
> be
> > installed on my Win 7 64 bit machine) when building the service.
> > ("algorithm" is the name of my service)
> >
> > 1>  axis2_svc_skel_algorithm.c
> >
> 1>c:\axis2c-bin-1.6.0-win32\bin\tools\wsdl2c\src\axis2_svc_skel_algorithm.c(251):
> > error C2491: 'axis2_get_instance' : definition of dllimport function not
> > allowed
> >
> 1>c:\axis2c-bin-1.6.0-win32\bin\tools\wsdl2c\src\axis2_svc_skel_algorithm.c(265):
> > error C2491: 'axis2_remove_instance' : definition of dllimport function
> not
> > allowed
> > The offending code looks like this:
> > --------------
> > /**
> > * Following block distinguish the exposed part of the dll.
> >   */
> >     AXIS2_EXTERN int
> >     axis2_get_instance(struct axis2_svc_skeleton **inst,
> >                        const axutil_env_t *env)
> > {
> > *inst = axis2_svc_skel_algorithm_create(env);
> >         if(!(*inst))
> >         {
> >             return AXIS2_FAILURE;
> >         }
> >    return AXIS2_SUCCESS;
> > }
> > AXIS2_EXTERN int
> >     axis2_remove_instance(axis2_svc_skeleton_t *inst,
> >                             const axutil_env_t *env)
> > {
> >         axis2_status_t status = AXIS2_FAILURE;
> >        if (inst)
> >         {
> >             status = AXIS2_SVC_SKELETON_FREE(inst, env);
> >         }
> >      return status;
> > }
> > ---------------------------------
> > Thanks,
> > Thomas
> > On Thu, May 27, 2010 at 6:04 PM, Amir Mousavizadegan
> > <amir.mousavizadegan@cox.net> wrote:
> >>
> >> Follow this doc....
> >> Amir
> >> ----- Original Message ----- From: "Sam Carleton"
> >> <scarleton@miltonstreet.com>
> >> To: "Apache AXIS C User List" <c-user@axis.apache.org>
> >> Sent: Thursday, May 27, 2010 5:37 PM
> >> Subject: Re: Have WSDL, want service (on windows)
> >>
> >>
> >> Thomas,
> >>
> >> It has been a while since I had to create my first project, but I will
> >> do my best to get you started.  I am sure others will chime in where I
> >> am wrong:
> >>
> >> There is a tool in Axis2/Java called WSDL2C.bat which will generate
> >> all the code the code the will parse and package the SOAP messages and
> >> ultimately allow you to focus on the implementation, not the plumbing.
> >>
> >> I think that all I did after that was create a Project in Visual
> >> Studio (I am a Windows programmer).  I assume on Unix/OSX you would
> >> simply create your makefile and compile everything together.
> >>
> >> Somewhere online there is an example of the command line options to
> >> use to generate both server side code and client side code from the
> >> WSDL.
> >>
> >> Sam
> >>
> >> On Thu, May 27, 2010 at 5:15 PM, Thomas Auzinger <thomas@auzinger.org>
> >> wrote:
> >>>
> >>> I downloaded the sources for AXIS2C and managed to build the binaries.
> I
> >>> also modified the samples somewhat and made them talk to a Java client.
> I
> >>> also created some code using wsdl2c.
> >>> However, now I want to build a NEW service from my WSDL and I don't
> know
> >>> how
> >>> to go about that. Is there a HOWTO for that? Is there a makefile that I
> >>> can/need to modify? I see that there are e.g. an echo.lib, echo.dll,
> >>> echo.exp, and service.xml. How do I get the corresponding files for my
> >>> new
> >>> service?
> >>> Thanks,
> >>> Thomas
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: c-user-unsubscribe@axis.apache.org
> >> For additional commands, e-mail: c-user-help@axis.apache.org
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: c-user-unsubscribe@axis.apache.org
> >> For additional commands, e-mail: c-user-help@axis.apache.org
> >
> >
>
>

Mime
View raw message