Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-dev] NotSerializableException: org.aspectj.runtime.reflect.JoinPointImpl$StaticPartImpl

Sure, and if you want to give me a patch that does it, even better :)

cheers,
Andy

On 29 February 2012 16:52, Choudary Kothapalli
<choudary.kothapalli@xxxxxxxxx> wrote:
> Shall I raise a request to make JoinPoint.StaticPart serializable, then? It
> would solve the problem of serialization.
>
> Choudary.
>
>
> On Wed, Feb 29, 2012 at 6:03 PM, Andy Clement <andrew.clement@xxxxxxxxx>
> wrote:
>>
>> Making them serializable is also reasonable.  There is nothing special
>> in them - mostly strings/ints.
>>
>> There is no option to weave the classes with no synthetic fields.  It
>> is feasible but they aren't necessarily cheap to construct and
>> inlining their construction where they are used would damage
>> performance to some degree.
>>
>> Andy
>>
>> On 29 February 2012 14:12, Choudary Kothapalli
>> <choudary.kothapalli@xxxxxxxxx> wrote:
>> > On second thoughts, making them transient may not be a good idea because
>> > the
>> > deserialization may fail.
>> >
>> > Do you think you can make JoinPoint.StaticPart and its contents
>> > Serializable? I am not sure if that would be correct, but just asking.
>> >
>> > Or, is there any option to weave the classes so that the synthetic
>> > fields do
>> > not exist at all?
>> >
>> > I know that I'm asking for something that may not be a requirement for
>> > most
>> > usage scenarios or the actual intended usage of AspectJ. But I am stuck
>> > with
>> > this problem and just checking if there is a way out.
>> >
>> > Thanks for your time.
>> >
>> > Choudary.
>> >
>> >
>> > On Wed, Feb 29, 2012 at 4:39 PM, Andy Clement <andrew.clement@xxxxxxxxx>
>> > wrote:
>> >>
>> >> I can provide you an option to make them transient, but I'm hesitant
>> >> to just change the default to transient.  If you want an option like
>> >> that, please open a bugzilla:
>> >> https://bugs.eclipse.org/bugs/enter_bug.cgi?product=AspectJ
>> >>
>> >> and I'll take a look.
>> >>
>> >> cheers,
>> >> Andy
>> >>
>> >> On 28 February 2012 14:35, Choudary Kothapalli
>> >> <choudary.kothapalli@xxxxxxxxx> wrote:
>> >> > My product MaintainJ uses AspectJ load time weaving to capture the
>> >> > call
>> >> > trace at runtime. When weaving an application, the following
>> >> > exception
>> >> > is
>> >> > seen.
>> >> >
>> >> > Caused by: java.io.NotSerializableException:
>> >> > org.aspectj.runtime.reflect.JoinPointImpl$StaticPartImpl
>> >> >     at java.io.ObjectOutputStream.writeObject0(Unknown Source)
>> >> >     at java.io.ObjectOutputStream.writeObject(Unknown Source)
>> >> >     at xxx.yyyyy.ZZZClass.writeExternal_aroundBody4(ZZZClass.java:70)
>> >> >
>> >> > AspectJ LTW seems to insert many fields as below in the class files
>> >> > and
>> >> > serializing them seems to be failing.
>> >> >
>> >> > private static final org.aspectj.lang.JoinPoint.StaticPart ajc$tjp_0;
>> >> > /*
>> >> > synthetic field */
>> >> >
>> >> > Is there any quick fix for this? Can AspectJ make these fields
>> >> > transient
>> >> > without any other issues?
>> >> >
>> >> > Thanks,
>> >> > Choudary Kothapalli
>> >> > MaintainJ Inc.
>> >> >
>> >> > _______________________________________________
>> >> > aspectj-dev mailing list
>> >> > aspectj-dev@xxxxxxxxxxx
>> >> > https://dev.eclipse.org/mailman/listinfo/aspectj-dev
>> >> >
>> >> _______________________________________________
>> >> aspectj-dev mailing list
>> >> aspectj-dev@xxxxxxxxxxx
>> >> https://dev.eclipse.org/mailman/listinfo/aspectj-dev
>> >
>> >
>> >
>> > _______________________________________________
>> > aspectj-dev mailing list
>> > aspectj-dev@xxxxxxxxxxx
>> > https://dev.eclipse.org/mailman/listinfo/aspectj-dev
>> >
>> _______________________________________________
>> aspectj-dev mailing list
>> aspectj-dev@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/aspectj-dev
>
>
>
> _______________________________________________
> aspectj-dev mailing list
> aspectj-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-dev
>


Back to the top