cancel
Showing results for 
Search instead for 
Did you mean: 

creating iview for webdynpro app that has customised theme

Former Member
0 Kudos

hi

i have created a webdynpro application and have implemented a theme to it..this has the sap-cssurl parameter to it.

When i create a wedynpro iview, in the wizard i put in the sap-cssurl parameter with its value

sap-cssurl=http://frodo:50300/webdynpro/resources/sap.com/tc~wd~dispwda/global/SSR/themes/ToolsTheme

Thou when i preview this iview, it displays an error message "deployable object does not exist"

How do i get this iview to work?

Accepted Solutions (0)

Answers (6)

Answers (6)

Former Member
0 Kudos

hi,

There is a value next to sap.theme.default called sap.useWebdynpro stylesheet .Set that parameter to true.

If that doesnot work.. i remember we had discussion for creating a app.specific theme... create a URL iview and append the sap-cssurl paremeter in the URL as u do it in the WebDynpro application and give this appended URL as the URL of the iView.

Then your iView will take your webdynpro theme instead of the portal theme

Regards

Bharathwaj

Message was edited by: Bharathwaj R

Former Member
0 Kudos

Should the ToolsTheme (the customised theme) be imported within the portal theme editor in the Theme Archive??

Currently the theme is stored in

<drive name >:\usr\sap\J2E\JC00\j2ee\cluster\server0\temp\webdynpro\web\sap.com\tcwddispwda\global\SSR\themes\

Message was edited by: RD

Former Member
0 Kudos

I have tried it <b>without</b> parameter and it works with the default SAP theme and i have tried it <b>with</b> parameter :

?sap-cssurl=http://frodo:50300/webdynpro/resources/sap.com/tc~wd~dispwda/global/SSR/themes/ToolsTheme

and this does not give error..it displays the application thou with the DEFAULT sap theme, my customised theme does not take effect.

In the WAS , it works fine, the customised theme takes effect..

Please help!!

Former Member
0 Kudos

hello RD,

you do one thing, concatinate this url (sap-cssurl) to the url generated by ur application and fire the exit plug with the resulting url. this might help u.

regards,

Piyush.

Former Member
0 Kudos

Hi RD,

Are you able to get the preview of the iview when you don't pass the sap-cssurl? If not, check whether the component is deployed into that server or not?

Also, when you pass the sap-cssurl as a application parameters it will still take the portal's theme url. To avoid this you have to apply the custom theme in your WAS through the visual administrator.

Here is the Link on applying custom Themes for webdynpro applications.

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/unkown/how to define web dynpro themes.pdf

Regards,

Santhosh.C

Former Member
0 Kudos

Hi Santhosh

It gives the same error when i dont pass the sap-cssurl.

The component is deployed in the server. I am able to view it in WAS in webdynpro content administrator. It works fine there.

I have changed the sap.useWebdynproStylesheet to true, this is what is described in the link you have given me.

How do i specify the parameters when i create the iView?

I just put in

sap-cssurl = <value>

Is this right?

Former Member
0 Kudos

Hi RD,

It looks the portal server is not able to find the application. How are you creating your iview? Did you create the system for your WAS server?

1. Create a System

http://help.sap.com/saphelp_nw04/helpdata/en/a4/7b7c04c8f8d24783552493fc3a0327/content.htm

2. Create the webdynpro iview which is referring to this system.

3. See the preview of the application.

If you require any further help do let me know.

Regards,

Santhosh.C

Former Member
0 Kudos

Santhosh,

I am creating a sap webdynpro iview. I have created a system for was server. Other wedynpro's do work.

When adding in the application parameters i do add the sap-cssurl = "<value>" , thou this does not work ..it gives the same error. It does not seem to find the application.

Former Member
0 Kudos

Hi Rd,

Check the "Application name", "Namespace" and "System" are correct.

Regards,

Santhosh.C

Former Member
0 Kudos

hi santhosh

the application, system and namespace are correct since it does not give any error and displays the application..the only problem is that it does not display it using my customised theme.

the theme is in stored the rest of the other sap themes.

i have even imported the theme in the theme archive..but it still displays using the sap default theme.

in visual admin ..the relevant property is set to true as well.

Former Member
0 Kudos

HI RD

Based on the inputs from ravi, santhosh and others I see that you are trying to have a custom theme for your application, In that case, you need go by the sap-css URl parameter only, otherwise, if you try to have a custom theme for the whole of WD engine, then all applications will take up this theme.

secondly, I see this path as the right one, however, make sure after themes/yourfoldername ( you must not have any / or space after this..) so just delete any space after your folder name. (it happened to many of our WD forum members..)

<drive name >:\usr\sap\J2E\JC00\j2ee\cluster\server0\temp\webdynpro\web\sap.com\tcwddispwda\global\SSR\themes\

The forum is always there to help you !.. try it out

thanks

sathyanarayanan

Former Member
0 Kudos

hi sathyanarayanan

I am going by just the sap-cssurl parameter.

I cretae the wd iview and under application parameters i put in: <b>?sap-cssurl=http://frodo:50300/webdynpro/resources/sap.com/tcwddispwda/global/SSR/themes/ToolsTheme</b>

The customised theme does not take effect. It seems to just not read this parameter.

I have cleaned ot cache as well but the changes does not occur..

any further suggestions?

thanx

Former Member
0 Kudos

hi

Follow the following steps for getting application specific themes..through code in your view

1) Go to the defalut Window interface view (the window which will be loaded when u access the application).

2) Create a exit plug (say <OutForTheme>) with string as the input parameter. Make sure that the name of the parameter is Url. It should be like this only.

3) Add the following line of code in the onPlugDefault Method of the interface view.

public void onPlugDefault(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )

{

//@@begin onPlugDefault(ServerEvent)

String cssParam = WDWebContextAdapter.getWebContextAdapter().getRequestParameter("sap-cssurl");

if (cssParam == null) {

try{

WDDeployableObjectPart currentAppPart = wdThis.wdGetAPI().getComponent().getApplication().getDeployableObjectPart();

String themeURL = WDURLGenerator.getApplicationURL(currentAppPart);

themeURL = themeURL "?sap-cssurl="

“http://<Server NAme>:<Port Number >/webdynpro/resources/sap.com/tcwddispwda/global/SSR/themes/<theme folder name>”;

// Path to your theme on the server

wdThis.wdFirePlugOutForTheme(themeURL);

}catch(Exception e) wdComponentAPI.getMessageManager().reportSuccess(e.toString());

}

}

//@@end

Try this & let me know whether you are able to achieve. Or else let me know whether you are directly typing the ?sap-cssurl..etc in the url after deploying ?

thanks

sathyanarayanan

Former Member
0 Kudos

Hi

Which path have u placed the themes. How was the theme generated. Did you use the Theme generated from Portal or did you generate it using WebDynpro theme editor. Let me know.

If you used the theme from the portal then you have to create a new theme project in the WebDynpro theme editor and then import this theme from portal into this project. Then you will do a generation of the theme which will generate it in the required format.

Moreover based on the error try giving the url in Quotes.

Something like

sap-cssurl =

"http://machinename:50300/webdynpro/resources/sap.com/tcwddispwda/global/SSR/themes/ToolTheme"

Anyway let me know if you require any further help

regards

ravi

Former Member
0 Kudos

Hi Ravi

I have used the Webdynpro ThemeEditor and in the project in the interface view in the onPlugDefault method i have fired the exit plug with the string application url + theme url

This works when i run it and in the wd administrator under local, it works there too.

I am trying out the url in quotes

Any further help is much appreciated

Thanx