As for the last step, let me correct myself:

    3. Start server Ignite node from spring context *AND *put spring jars
inside classpath in *.sh file. Be sure, that both nodes are using the same
xml context.

On Wed, Jan 20, 2016 at 5:07 PM, Vladimir Ershov <vers...@gridgain.com>
wrote:

> Hi!
>
> I've checked your code and spot an issue. The root cause, is using of
> Autowired annotation, since it cause bean to be serialized on a client
> side, and that leads ClassNotFoundException on the server side during bean
> deserialization, since server was started from *.sh, without necessary
> spring jars in the classpath.
>
> Good news here, that it could be fixed easily with those steps:
>
>    1. Remove Autowired from transferred entities as ComputeGridJob
>    2. When you need an applicationContext, use
>    @SpringApplicationContextResource annotation.  You are need to use it in
>    your ComputeGridTask.
>    3. Start server Ignite node from spring context, or put spring jars
>    inside classpath in *.sh file.
>
> Also, you can simplify your solution for ComputeGridService by using
> @ServiceResource. Take a look:
> https://apacheignite.readme.io/docs/service-example
>
> Thanks!
>
> On Wed, Jan 20, 2016 at 6:07 AM, 李玉珏 <18624049...@163.com> wrote:
>
>> Hi:
>> The relevant code on the GitHub, the address is:
>> https://github.com/liyuj/computegrid
>>
>>
>> Sent from Mail Master
>>
>>
>>
>> On 2016-01-20 04:32 , Dmitriy Setrakyan Wrote:
>>
>> The list does not support attachments. You can use pastebin [1] or gist
>> [2]
>> to paste your code and send the link here.
>>
>> [1] http://pastebin.com/
>> [2] https://gist.github.com/
>>
>> D.
>>
>> On Tue, Jan 19, 2016 at 4:48 AM, 李玉珏@163 <18624049...@163.com> wrote:
>>
>> > Hi:
>> >
>> > I had just sent the code to the list.
>> >
>> > 在 16/1/19 20:39, Denis Magda 写道:
>> >
>> > Seems that peerClassLoading doesn't work for your case. Please share the
>> >> source code of your example.
>> >>
>> >> --
>> >> Denis
>> >>
>> >> On 1/18/2016 3:48 PM, 李玉珏@163 wrote:
>> >>
>> >>> Hi:
>> >>>
>> >>> I have already opened the peerClassLoading.
>> >>> My practice is in eclipse create a java project, developed a
>> >>> ComputeTaskSplitAdapter examples, then in the ComputeJobAdapter call
>> >>> configured spring interceptors service. This example in eclipse
>> operation
>> >>> is no problem.
>> >>>
>> >>> But if I open a node in the command line by ignite.sh, it will prompt
>> >>> the following error in the command line.
>> >>>
>> >>> In the default configuration file of ignite, the same configuration of
>> >>> the peerClassLoading=true.
>> >>>
>> >>> 在 16/1/18 19:39, Yakov Zhdanov 写道:
>> >>>
>> >>>> Can you please try enabling "peerClassLoading" and share the results
>> >>>> here?
>> >>>>
>> >>>> --Yakov
>> >>>>
>> >>>> 2016-01-16 12:09 GMT+03:00 李玉珏@163 <18624049...@163.com>:
>> >>>>
>> >>>> Hi:
>> >>>>>
>> >>>>> In a distributed environment, if use the spring AOP programming,
>> >>>>> generated
>> >>>>> a class of byte code enhancement, then the error will be reported as
>> >>>>> follows:
>> >>>>>
>> >>>>> java.lang.ClassNotFoundException:
>> >>>>> demo.computegrid.ComputeGridService$$EnhancerBySpringCGLIB$$7b44b192
>> >>>>>
>> >>>>> This error I understand, this class does not exist on the remote
>> node.
>> >>>>> But the question is, is it a technical limitation of Ignite, or is
>> it
>> >>>>> the
>> >>>>> way I use it,or is it a bug?
>> >>>>>
>> >>>>> I opened the peer class loading , the normal deployment I did not
>> test,
>> >>>>> but I estimate it will be the same error.
>> >>>>>
>> >>>>>
>> >>>
>> >>>
>> >>
>> >
>> >
>>
>
>

Reply via email to