cancel
Showing results for 
Search instead for 
Did you mean: 

Error getting messeges in Webdynpro

Former Member
0 Kudos

Hello Everybody,

I have developed two webdynpro application.

1. EndUser Webdynpro application

2. Myapp Webdynpro application

I have created iview on portal for EndUser webdynpro application.

From EndUser webdynpro application, I am calling interface view of Myapp webdynpro application.

In Enduser application, I have Tree view on left side and right side I am displaying view of the MyApp application.

In MyApp application, I have gridlayout view set with two rows and one column.

I have attached one view on top and one in bottom.

From the bottom view, I am submitting data to Java dictionary tables. After submitting data I am displaying messege on the screen.

Now problem is:

Sometimes, it doesn't show messege on the screen and sometimes it displays with the same data.

I don't know why this happens. Is this problem from webdynpro application or from Portal?

Regards,

Bhavik

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Bhavik,

Which view you have your Message Area?

Regards,

Shubham

Former Member
0 Kudos

Hi Shubham,

I have message area in one of the views of MyAPP application.

I am showing this view at the right side of the viewset of the EndUser application. Message is displayed also sometimes. But, sometimes nothing displayed.

If I refresh my application and enter the same data and submit again, Messages are displayed.

Regards,

Bhavik

Former Member
0 Kudos

Hello Everyone,

I update what is happening actually.

I have four webdynpro dcs. In one webdynpro dc(End User), I have provided links for other three webdynpro dcs in this dc.

On click of the link it will show corresponding dc's views at right side of the screen of the viewset. I have message area in each webdynpro dcs except End User webdynpro dc.

But in End User application, It shows messages from the dc which is loaded first. If I call other dcs then the messages from those dcs won't show.

But, If I refresh the browser and then calls another dc then messages come properly.

For loading webdynpro dcs in End User application, I have used life span of those dcs as "MANUAL". I am creating that component each time when user clicks on respective link.

What should be the reason behind this?

Thanks,

Bhavik

Former Member
0 Kudos

Hi Bhavik,

I kind of played around with what you said .

From the behaviour i had seen, it seems like there will be one Messagearea UI element handle for the whole of the application.

Wheni used message area s in comp1 and comp2 and fired plug to interface views of any of these.. the compoenent whihc is activated first will display the data.

When the second link in pressd it somehow loses the handle to the first created component iteself.

When for every click i check the component instances available, destroy al the compoennet usages and then do my processing for firing a plug to interface view or whatever the message area seems to be available .

And when you declare the message area in the parent compoenent , message s from all the components are displayed as expected at all times.

Cant reason out the behaviour yet.Let me see if i can dind it.. ! But soultion will be destroy other usages or to use the message area in the parent component.

Regards

Bharathwaj

Former Member
0 Kudos

Hello Bhavik,

The messages are always displayed in the Message Area that is loaded first in a perspective(Combination of DC's views). This is an extract from Message Area documentation.

<-----

If there are several suitable instances, the oldest one (with respect to creation time) is used. Note that it's the application developer's responsibility not to place a MessageArea in a view in such a way that MessageArea is not permanently visible, except if the visibility (or enabled) property of the MessageArea is set accordingly. Also beware that the tooltip property might have no effect.

-


>

This is exactly the case in your application.

<---

But in End User application, It shows messages from the dc which is loaded first. If I call other dcs then the messages from those dcs won't show.

-


>

In your case, the message area is loaded in the DC, that you load first from your End user DC, say DC1. Then when you load the second dc DC2, messages are still being shown in the first dc's DC1 message area. But since that is hidden you are not able to see the same. To verify this just do not hide your view of DC1 when you load the view of DC2. You will see that the messages from DC2 is also shown in the DC1 Message Area.

This is a standard behaviour of Message Area.

You have the following options to prevent this.

1) Create a view in your End User DC that only contains message area. In your viewset, position this view where ever you want to see the messages and do not hide this view ever.

2) Create the Message Area dynamically. Check my earlier reply on the same.

Regards,

Shubham

Former Member
0 Kudos

Ya.I looked into the documentation now.. That explains the behaviour of my application too. !

Former Member
0 Kudos

Hi Bhardwaj/Shubham,

Now what I did is,

I am deleting the usage of all components when I click on any link and then creating the component usage which I want to display. Means, at a time only one component usage is available and So, only one message area from the respective component is available, Right?

But it is behaving as same as priviously.

I know the second option is valid for this solution. But I want to explore the reason behind this?

Regards,

Bhavik

Former Member
0 Kudos

Hi ,

Assuming you have the same view assembly as mentioned before and Message area's available in both the interface views (not in main component's view)..

Have u tried displaying the views from the used DCs in different places in the screen.. so that activating one might not hide the other.. Whats the behaviour now.?

And also can u post the code for the same ?

Regards

Bharathwaj

Former Member
0 Kudos

Hi ,

Assuming you have the same view assembly as mentioned before and Message area's available in both the interface views (not in main component's view)..

Have u tried displaying the views from the used DCs in different places in the screen.. so that activating one might not hide the other.. Whats the behaviour now.?

And also can u post the code for the same ?

Regards

Bharathwaj

Former Member
0 Kudos

Hi Bhavik,

One suggesstion,why dont you try running this normaly and not in Portal.Then you may get your answer if it is problem from Webdynpro or portal runtime.

I had a problem with MessageManager and componentization of applications.I solved it by modyfying life cycle of the component usage set to manual.

Former Member
0 Kudos

Hi Baskaran,

I cannot run my EndUser application directly as webdynpro application as I have made JCO connections to use SSO. And Backend system is configured to accept Portal certificate.

So, I cannot test it directly.

Regards,

Bhavik

Message was edited by: Bhavik Devisha