cancel
Showing results for 
Search instead for 
Did you mean: 

What about NW/BSP Integration?

Former Member
0 Kudos

Hi all,

I would like to know if NW permits a good integration with BSP.

thanks.

Vito Palasciano

Accepted Solutions (0)

Answers (1)

Answers (1)

eddy_declercq
Active Contributor
0 Kudos

Hi,

Can you ellaborate on the reason for your question?

Do you have doubts about something. BSP is a part from WebAS, which itself is a part of Netweaver. Check things like service.sap.com/nw04 and service.sap.com/webas for additional info.

Eddy

Former Member
0 Kudos

Eddy,

when developing a java application (WD, Java, etc.) using NWDS, I need to call some BSPs in order to execute some activities. I would like to known if there are problems to use BSP into WD and viceversa.

Thanks.

Vito

eddy_declercq
Active Contributor
0 Kudos

Hi,

I see, check this forum thread talking about it:

Eddy

athavanraja
Active Contributor
0 Kudos

i dont see any problem using, inface we use similar stuffs. you may need to set up SSO to ustilise single sign on from your java application to backend which delivers the BSPs

Regards

Raja

Former Member
0 Kudos

Hi Raja,

could you explain me in more details what means "set up SSO to single sign utilize"?

Thanks,

Vito

athavanraja
Active Contributor
0 Kudos

you want to integrated BSP pages into WD, java iviews and also the other way around (WD and java iviews inside BSP pages) for this you may need to set up SSO so that with single sign on all the applications can communiate/integrate with each other without further authentication .

Regards

Raja

eddy_declercq
Active Contributor
athavanraja
Active Contributor
0 Kudos

if you could tell us what exactly you want to do , may be we could come up with better answers!

Raja

Former Member
0 Kudos

Raja,

I have a WD application that calls different BSPs by iFrame (with a tabStrip).

The question are two:

1. Every time I navigate into BSP it ask me login and password. I suppose I need to implement Single Sign-on! How?

2. Into iFrame I inserted an absolute link like this:

http://crmsap3.dir.svc.firm.com:8080/sap(bD1lbiZjPTUwMSZkPW1pbg==)/bc/bsp/sap/crm_bsp_frame/entrypoi...

How I can to get the link in a relative mode? I think there is a right way to make this?

Thanks,

Vito

eddy_declercq
Active Contributor
0 Kudos

Hi,

1. Check the earlier mentioned SSO links.

2. Just specify the entrypoint.do?appl=CRMM_ACT

in your src. Depending on whether the path and/or server isn't the same as the opener of the iframe, you need to specify them too.

Eddy

Former Member
0 Kudos

Eddy,

sorry, I have some doubts on the first point.

My application use different BSPs on the same server. This is a test server. When the application will be finish I will need to deploy the application to run into another server (we suppose production), in that moment I will not to change the BSP address in my code. So I need, as you told, to specify only entrypoint.do?appl=CRMM_ACT. But how I can catch the rest of the address in my code?

For the first point I'm reading the documentation you suggested.

Thanks,

Vito

eddy_declercq
Active Contributor
0 Kudos

Hi,

You can make the URL dynamic, like we always do for the destination for RFC calls.

All you need is to test is the sysid, eg

IF sy-sysid EQ 'name_of_prod'.

URL = 'prod_url'.

ELSE.

URL = 'test_url'.

ENDIF.

If you need this code in multiple pages, you'd better put the above code in an include.

Eddy

Former Member
0 Kudos

Eddy,

you think this could be fine:

String systemID = System.getProperty("SAPSYSTEMNAME");

This return in my case "C01" that I suppose is SAP system. But in this way I can define unambiguousness sap system, but I have to hard-coded all the rest of address!!!

Thanks,

Vito

Former Member
0 Kudos
My link to BSP is 
http://crmsap3.dir.svc.firm.com:8080/sap(bD1lbiZjPTUwMSZkPW1pbg==)/bc/bsp/sap/crm_bsp_frame/entrypoint.do?appl=CRMM_ACT

I agree to hard-coded entrypoint.do?appl=CRMM_ACT. But I can't obtain by code the http://crmsap3.dir.svc.firm.com:8080/sap(bD1lbiZjPTUwMSZkPW1pbg==)/bc/bsp/sap/crm_bsp_frame/

I tried also to use:

InetAddress n=InetAddress.getLocalHost();

name=n.getHostName();

But this return the server name that is not equal to crmsap3.dir.svc.firm.com:8080.

Thanks,

Vito

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

Let me throw out another idea altogether. This approach is a bit more work upfront, but gives considerable freedom if this is an format (BSP and WebDynpro together) quite often.

What I have done in the past is to create an RFC call on the ABAP system. This function module will take in a generic key from the caller and use the Class method, CL_BSP_RUNTIME=>construct_bsp_url.

You can then expose this RFC to WebDynpro via Adaptive RFC. This gives you the fexibility to adjust the target for the call using the the very nice Adaptive RFC tools.

athavanraja
Active Contributor
0 Kudos

Is the WD application is java WD or ABAP WD?

I will make an assumption that its java WD.

Is this java WD application running in portal or independently?

Ans:1 Yes you need to configure SSO - for this check out the links provided by Eddy. if entering userid pwd only once is acceptable(for BSP) then you need to just configure SSO2 - In this case the application would request authentication first time and for further access to same BSP or different BSP from the same server will not ask for authentication. for this you need to maintain two profile parameters (txn RZ11) login/accept_sso2_ticket

= 1 and login/create_sso2_ticket = 1

Ans2: since the java WD and BSP will be running from different servers i dont think you can use relative url and you have to go for absolute URL - construction of this absolute URL can be achieved as suggested by Thomas, create RFC FM which will use method CL_BSP_RUNTIME=>construct_bsp_url to construct the url and return the same to your application

Hope this is clear.

Regards

Raja

Reward the helpful answers by cliking the radiobutton and close the thread once its answered

eddy_declercq
Active Contributor
0 Kudos

Hi,

Continueing Thomas's idea, here's the code that I've also used for the honeypot project. It'll crate the uri, including the mangle:

l_field-name = 'c'.

l_field-value = sy-mandt.

APPEND l_field TO l_fields.

l_field-name = 'l'.

call function 'LANGUAGE_CODE_SAP_TO_ISO'

EXPORTING sap_code = sy-langu

IMPORTING iso_code = lang

EXCEPTIONS others = 1.

if sy-subrc = 0.

translate lang to lower case.

l_field-value = lang.

else.

l_field-value = 'en'.

endif.

APPEND l_field TO l_fields.

CALL METHOD cl_http_utility=>if_http_utility~fields_to_string

EXPORTING

fields = l_fields

encode = 1

RECEIVING

string = encoded.

CALL METHOD runtime->construct_bsp_url

EXPORTING

in_application = runtime->application_name

in_application_ns = runtime->application_namespace

IMPORTING

out_local_url = url.

concatenate url '/' runtime->page_name into url.

uri = CL_BSP_UTILITY=>CREATE_REWRITE_URL( in_url = url in_uri_tab = l_fields ).

Eddy

Former Member
0 Kudos

Thomas, Raja, Eddy thanks for your collaboration.

I will try in the next days this solution, I'm not expert in abap language so another person have to program the function module and I will use the result into my WD.

I'll keep you informed on the results, hoping all works fine

Thanks,

Vito