cancel
Showing results for 
Search instead for 
Did you mean: 

Interview Questions

Former Member
0 Kudos

Hi all,

Can some of you please send me some interview questions regarding Web Dynpro java.

Regards

Vikas

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi vikas

1)What is the purpose of NetWeaver?

2)What r all the Diff layers of NW and their purpose?

3)What r the NW components?

4)What is the purpose of Webdynpro tool?

5)Data binding

6)Context mapping

7)Portal ojects

8)Knowledge management

9)Collabration

10)SingleSign on

Regards

GH.Guptha

Former Member
0 Kudos

Hi

I want the questions for Web Dynpro Java

Former Member
0 Kudos

Hi!,

a few question which i had fessed ..

1. Data binding

2.Context mapping

3.How many models are there in WDJ ?

4.what is the use of each Model ?

5.Different Controls of WDJ.

6.How to connect WDJ application to R/3 systems.

7.what is DC ?

8.How to access a part of DC from Diffent DC.

regards,

Mithileshwar Sahu

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Vikas,

Check the following link for more questions

1) Accessing a Portal Component in the Default Mode?

Ans: doContent();

2) Extending class when Developing your Portal Components?

Ans: AbstractPortalComponent.

3) Portal Runtime calls the methods in the Life Cycle

Ans: init(), service(), destroy()

4) What are the Parameters that we have to pass to doConent();

Ans: IPortalComponentRequest ,IPortalComponentResponse;

5) How do u access a Resource from a request object

Ans: request.getResource();

6) Personalization concept what are the data type ….the type attribute supports

Ans : String , Date , Select , Boolean

7) How do u get the property from the IPortalCompenentProfile

Ans : getProperty(String)

😎 What is the method has to be overridden by the class that extends from PageProcessorComponent

Ans : getPage();

9) Give the sequence of methods execution of DynPage

Ans :

1) doInitialization()

2) doProcessAfterInput()

3) doProcessBeforeOutput()

10) sequence of method calls when an event occurs

Ans :

1) doProcessAfterInput()

2) on<EventHandlerName>

3) doProcessBeforeOutput()

11) how do u get the getCurrentEvent();

Ans :

IPageContext myContext = PageConectFactory.createPageConext(request,responce);

Event = myContext.getCurrentevent();

12) onClientClick() and onClick() are specified then which method will be called first

Ans : onClientClick();

13) JSPDynPage uses _________ type of approach

Ans : Model View Controller

14) The two properties in the component profile indicate that a JSP need to be compiled into portal component :

Ans :

Property name = “JSP”

Property name = “ComponentType”

15) Which one is true in the following statement

a) <property name = “hbj” value = “/service/htmlb/taglib/htmlb.tld”>

<%@ taglib uri = “hbj” prefix = “htmlb”>

b) <property name = “htmlb” value = “/service/htmlb/taglib/htmlb.tld”>

<%@ taglib uri = “hbj” prefix = “hbj”>

c) <property name = “htmlb” value = “/service/htmlb/taglib/htmlb.tld”>

<%@ taglib uri = “hbj” prefix = “htmlb”>

d) <property name = “hbj” value = “/service/htmlb/taglib/htmlb.tld”>

<%@ taglib uri = “htmlb” prefix = “hbj”>

Ans : a

16) How do u call a jsp file :

Ans : setJspName();

17) If java Script are used _______tag is necessary for the page

Ans : Page tag

18) Which tag is used for including bean in the jsp file

Ans : <jsp: useBean />

19) What is the scope of the bean <jsp : useBean scope = sesssion>

Ans : Session

20) Give the objects that are extend form the IPrincipal

Ans :

IGroup,IRole , IUser,IUserAccount,IUserMaint,

21) ____is the Central object from which all UME object factories are obtained

Ans : UMFactory

22) IUser user = UMfactory.getUserfactory().getUserbyLogonID(uid)

String userName = user.getDisplayName();

String email = user.getEmail();

Response.write(“ userName”+ username” Email :” email);

1) Displays the username and Email ID

2) Throws an exception

3) Doesn’t Compile

Ans : 1.

23) List the methods used to create successful user

Ans :

1) NewUser(uid);

2) setFirstName()

3) setLastName()

4) setEmail()

5) setPassword();

24) can we construct an unique id manually .

Ans : false can create a unique id .

25) Unique IDs are used to identify objects across data sources.

Ans : <objectType>.<Data Source>.<ObjectDinDataSource>

26) How do u retrieve log on information

Ans : umdata.enrich(map);

27) What is the return type of map.get(“”);

Ans : String

28) How do u load the data in the Client Eventing across the iviews

Ans : EPCM.loadClientData();

29) What is the object available in the pages

Ans : EPCM

30) What problems does HTMLB the overcomes on servelts

Ans :

Visualization and business logic are not separate

Development has to take care of different web clients and versions

NamesSpace conflicts with form elements

31) Stored data is identified by the key …..

Ans : Namespace+name

32) Frame Work Levels

Ans :

Level = 0 ….. not supported by both javaScript, Java

Level = 1 -


only by browser (java Script )

Level = 2 -


both javaScript and Java

33) Features of portal Services in the portal

Ans :

1) portal services are way to provide functionality to portal component

2) portal services implement no user interface

3) portal service may be accessed from out side portal framework

34) Why do we need custom portal Services in the portal

Ans :

1) Can be used by other Portal Application

2) Provide commonly used Functionality

3) Can be exposed as webservice

35) To build a new portal service ……interface must be implemented

Ans :

IService

36) Life cycle of a portal service

Ans :

Init()

Afterinit()

Destroy()

37) Service name =

Ans :

<ApplicationName>.<Service>

<ApplicationAlias>.<Service>

<ApplicationName>.<ServiceAlias>

<ApplicationAlias>.<ServiceAlias>

38) Portal service name is myService …what would be the name of interface that extends IService

Ans : IMyService

39) JCA/J2EE connector Architecture is not API. True /False

Ans : true

40) ConnectorFrameWork is SAP Extended API from CCI . all methods in Connector FrameWork has methods with suffix as EX()….

Ans : False only some methods

41) What is the method used to get connection in the Java Connectors

Ans : Service.getConnection();

42) How do u get the locale from the request object.

Ans : Request.getLocale();

43) What is the return type for the table type structure .

Ans : IRecordSet.

44) Give the name of the method that returns resource bundle for the current locale.

Ans : getResourceBundle()

45) Localization.properties

Localization_de_DE.properties.

Localization_en_EN.properties.

What is the Resource bundle name : ?

Ans : Localization

46) What is the data type that returns by the method getString (key)

Ans : String

47) How do u access the a key in the properties file xyz = abc

Ans : getString (“xyz”)

48) What type of objects can be translated

Ans : Text

49) the portal translation process is supported by tools

Ans :

Translation worklist coordination

Worklist translation

50) to customize the Logoff screen to the portal -


file is used to change

Ans : masthead

51) SAP Recommends not to modify the SAP code , then what are the process to customize the code

Ans :

1) copy the existing file and rename it according to customer name space

2) create new custom component

52) how can we customize the company Branding

Ans :

1) masthead

2) through customize applicaton

53) Their one question on Desktop inner page

54) What are the components that are added to Portal Desktop

Ans :

Default Frame work

Themes

55) What is the jsp name that contains log on page

Ans : umLogonPage.jsp

56) Authschemes.xml is modified to get custom log on component

57) How do u access portal services from WebDynpro applications

Ans : WDPortalUtils

58) Cache Level :

Ans : none ,session ,user,shared

59) getCachingLevel() is used to get the Cachelevel

60) When will the doinitialization () method is called

Ans :

1 When the page is loaded for the first time

2 When the page is refreshed

3 When object is called from the another object

61) Cached objects are retrieved using the --- method

Ans : get(key)

62) How can the portal service access to external Web Service

Ans :

Generate java proxy out of WSDL file with PDK

You can execute the java proxy as portal service

Some more questions from this forum.

1.What is SAP Enterprise Portal?

2.What components does SAP Enterprise Portal contain?

3.What is the relationship between Web Dynpro and SAP Enterprise Portal? Are iViews and Web Dynpro competing technologies?

4.What personalization functions does SAP Enterprise Portal provide?

5.What tools does SAP provide for creating portal content?

6.What are the key features of the portal?

7.Which security features does SAP Enterprise Portal offer?

8.How is user management implemented in SAP Enterprise Portal?

9.How can I integrate the user management of the portal with that of other systems?

10.Where can I find more information about user management and security in the portal?

11.Request flow in Portal ?

12.What is UME(User Manament in Portal) ?

13.What u can do with 'Content Admin','System Admin' and 'User Admin' Portal Roles ?

14.Different Types of Iviews in Portal ?

15.What is an Iview ?

16.Wht is SSO (Single sign on)?

17.How u transport PCD from one system to other?

18.Whts new in SAP NetWeaver ?

19.What is ESS and MSS ?

20.What is Team Viewer in MSS ?

Answers

1. What is SAP Enterprise Portal?

SAP EP offers users role-specific, Web-based and secure access to all relevant information, applications and services. Employees only need a desktop and a Web Browser, and can begin work once they have been authenticated in the portal.

2. What components does SAP Enterprise Portal contain?

SAP Enterprise Portal contains the NetWeaver components Portal, Knowledge Management, and Collaboration. In addition, SAP provides pre-defined content. At the moment the portfolio contains more than 100 business packages, which are shipped in multiiple languages.

3. What is the relationship between Web Dynpro and SAP Enterprise Portal? Are iViews and Web Dynpro competing technologies?

Web Dynpro is SAP's programming model for developing professional and interactive Web user interfaces for business applications.

An iView is a logical portal content module representing a visual application or part of one. One or more iViews are combined on a portal page, which is then assigned to users by the role definition. Web Dynpro UIs are integrated in SAP Enterprise Portal with iViews.

4. What personalization functions does SAP Enterprise Portal provide?

Portal roles are a central element of SAP Enterprise Portal. They structure the content and are defined for specific end users.

A role is a collection of task-specific content. Roles are defined based on responsibilities and areas of interest, and are created by a role administrator. A user can be assigned one or more roles (for example, the roles employee and staff). The roles define the content of the portal navigation as well as the content of the portal. Role assignment can therefore be seen as a pre-personalization of the portal - a personalization that is performed by the administrator and not by the user (personalization level 1). Depending on their permissions, users can also adjust the look and feel of the portal, maintain user-specific attributes (personalization level 2), change portal pages by adding or deleting iViews (personalization level 3), and personalize individual iViews (personalization level 4).

5. What tools does SAP provide for creating portal content?

SAP provides tools for creating and developing portal content – depending on the target group and the complexity of the applications.

One distinguishes between

• Portal Content Studio: An administration environment integrated in SAP Enterprise Portal that is used for code-free development of portal content using wizards.

• SAP NetWeaver Visual Composer: Model-based development of portal content by simply using graphic tools.

• SAP NetWeaver Developer Studio (Web Dynpro perspective): Based on the powerful Web Dynpro programming model, application developers can develop Web user interfaces for professional business applications.

• SAP NetWeaver Developer Studio (J2EE + PDK perspective): The SAP NetWeaver Developer Studio offers complete support when developing Java projects.

• SAP ABAP Workbench: The ABAP Workbench provides the Business Server Page (BSP) technology for creating Web user interfaces.

All the portal content created using these tools can be seemlessly integrated in SAP Enterprise Portal using the portal services already presented.

6. What are the key features of the portal?

The portal is more than just a „page paster“ and different services for handling the interaction between iViews. Typical examples for the integration technology are:

• Client Eventing: Enables iViews to communicate with one another at the client side and to communicate with the portal itself.

• Work Protect: Function providing an infrastructure for handling unsaved data in portal applications, for example if users navigate in the portal without first having stored their entries in an application.

• Session Management: Contains in particular the session persistence to retain the last session status of the user (for example when navigating to another portal page) as well as a server session termination function for releasing resources on the backend system (for example when closing the browser).

• Portal Navigation: SAP Enterprise Portal offers more than simply navigation between individual portal pages, in particular.

• Object-based navigation (OBN): It provides users with a navigation feature based on the actual business objects from productive backend systems.

• Drag&Relate: iViews can contain objects representing business elements of a backend application (for example customer). If users pull such an object, as with Drag&Drop, and relate it to another object in the Drag&Relate target object area, they can navigate between different applications containing similar, but not identical business objects.

• Dynamic Navigation: The portal enables you to assign navigation objects to pages and iViews as context-sensitive dynamic navigation iViews. This means that navigation targets are provided dynamically depending on the action selected.

7. Which security features does SAP Enterprise Portal offer?

The portal offers the following security features to help keep your portal secure.

• Authentication: When users access the portal, they must provide some form of identification in the form of user ID and password, client certificates, and so on. The portal supports authentication with user ID and password, X.509 certificates, integrated Windows authentication, external Web access management tools.

• Single Sign-On: Once users have successfully logged on to the portal, they can access all information, applications, and services without repeatedly having to log on.

• Authorization: ACL-based permissions ensure that users can only access portal objects for which they have the required authorization. Authorization for applications integrated in the portal are handled by the systems on which the applications run.

• User Management: Existing corporate LDAP directories in your system landscape can be leveraged by the portal. Alternatively user data can be retrieved from a SAP Web Application Server ABAP or from a database.

• Secure Communications: Secure Sockets Layer (SSL) and Secure Network Communications (SNC) can be used to build a secure channel between the user's Web browser, the portal server, and backend systems.

• Secure network architecture: Recommendations for a secure network architecture for the portal are available in the Portal Security Guide.

• Security logging: Security-relevant events such as user logon, or changes to permissions, are logged.

8. How is user management implemented in SAP Enterprise Portal?

The portal uses the 'User Management Engine' (UME) which is an integral part of SAP Web Application Server Java. The UME manages user and user-related data (roles, groups) which can be retrieved from an LDAP directory, a SAP Web Application Server Java, a database, or a combination of these. Administration tools allowing you to manage users, groups, and roles are integrated in the portal user administrator role. A configuration tool for configuring the UME is integrated in the portal system administrator role.

In addition, the UME provides many features such as self-registration with approval workflow, notification emails, and so on.

9. How can I integrate the user management of the portal with that of other systems?

The portal user management is very flexible and allows you to use a variety of repositories for storing and retrieving user data. In particular, it allows you to leverage existing user repositories in your system rather than having to set up a new user repository.

For example, if you are using your portal in a system landscape that includes many non-SAP systems, you can provide a central user base using an LDAP directory and configure the portal to use the LDAP directory as its user repository.

On the other hand, if you are using your portal in a system landscape that consists of SAP systems only, you can set up Central User Administration (CUA) on one of the ABAP-based systems and configure your portal to use the ABAP user management as its user repository.

10. Where can I find more information about user management and security in the portal?

Visit SAP's security pages in SAP Service Marketplace at service.sap.com/security. You can find the Portal Security Guide with recommendations on how to secure your portal at service.sap.com/securityguide. Documentation on security and user management is available on the Help Portal at help.sap.com/nw04.

What exactly is the SAP Web Application Server?

The SAP Web Application Server is the reliable, open standard-based application server from SAP. It supports both J2EE and ABAP, and serves as the underlying infrastructure for all new and upcoming SAP solutions, like SAP R/3 Enterprise, SAP Portal, SAP Exchange Infrastructure, and all other SAP components. The SAP Web Application Server is not a new product, it is the natural evolution of proven SAP application server technology formerly known as SAP Basis. It provides the platform to develop, execute, and operate Web applications and Web services as well as traditional SAP GUI based applications

Does the SAP Web Application Server replace the SAP Internet Transaction Server (SAP ITS)?

No, the SAP Internet Transaction Server (SAP ITS) will continue to be supported in the future and is integrated into Web Application Server from version 6.40 on. This is because the SAP ITS will in future display Dynpro-based SAP applications to the Web, either using the HTML-GUI or with HTML-template based IACs. This integration reduces the additional hardware for an external ITS. All SAP ITS based applications and the administration will work as before.

Flow Logic technology will also not be supported by the SAP Web Application Server. ITS Flow Logic is an approach to Web application development that is now completely covered by the new "Business Server Pages" technology and others. New applications based on ITS Flow Logic are no longer developed by SAP. Existing applications based on ITS Flow Logic will continue to be supported. SAP recommends customers use the Business Server Pages for new projects or projects in an early stage of development instead of ITS Flow Logic.

Will my application run on SAP Web AS?

The SAP Web Application Server is the foundation for all new and upcoming SAP solutions, like SAP R/3 Enterprise (MySAP ERP respectively), SAP Portal, SAP Exchange Infrastructure, and all other SAP components. Basically an SAP application will run on top of the SAP Web Application Server, if SAP ships the application or solution based on the SAP Web Application Server (for current information about SAP components availability see: Platform and Technology Information Center.

Furthermore, a non-SAP application that is based on J2EE could run on the Web Application Server if this application is J2EE compliant.

SAP Web Application Server 6.40 provides a J2EE Engine which is an J2EE 1.3-compliant application server, that is, every J2EE-1.3 compliant application will run on it. The only thing to do is configure external resources used by your application (for example, the database, the JMS resource) inside SAP Web Application Server 6.40 and to (re)deploy your application on SAP Web Application Server 6.40. However, many third party J2EE application servers provide additional, proprietary server functions, making applications possibly not immediately portable. Check if your J2EE 1.3 application is using such non-standard extensions.

Will my SAP application also run on third party application servers?

There are two cases here to consider. If your application is written in ABAP the answer clearly is no. If your application is written in Java the answer is not that easy. Any J2EE application can of course be ported to other servers. This definitely means that there will be some porting effort, dependent on the specific case and the J2EE technologies used. SAP will not automatically support this.

Be aware that J2EE will help a lot to standardize your application but at the same time will not guarantee a seamless port-by-copy approach.

Should I use Java or ABAP as the programming language for Web application development?

The Java development and runtime environment is gradually being built up, extended, and integrated in the SAP Web Application Server by SAP. However, it will still take some time in the market before the Java/J2EE platform offers the performance and reliability that the ABAP environment has already had for a long time.

On the other hand Java development today is prefered for many projects done in the corporate area. Your decision on using one or the other should be based on the kind of ressources you have available.

When mixing technologies it is a good idea to do a proof of concept for that project to be sure that it works in the way you expect.

Pricing and Availability

How can customers order the SAP Web Application Server?

The SAP Web Application Server is available as part of any SAP solution. Any mySAP.com license includes the runtime usage (Runtime license) of the SAP Web Application Server for this solution. In addition, the SAP Web Application Server can be used for developing and deploying third party and custom-developed solutions. In that case, a separate license (Full usage license) is needed. The SAP Web Application Server is available through the standard SAP sales channels.

What are the differences between the licenses?

There are two different licenses available for using the SAP Web AS.

The Runtime license is included in any SAP application license such as SAP R/3 or mySAP.com and is not available separately. This license includes the execution for all SAP software and all modifications and enhancements of supported business scenarios.

The Full usage license is a separate license that allows the running of custom developed or third party applications on the SAP Web AS. This license also allows you to run all third party applications and all custom developed applications beyond modification or enhancements or beyond supported business scenarios.

Architecture and Development

What are the features of the different SAP Web Application Server releases?

SAP Web Application Server 6.10 was the first release and supports native Web technologies like HTTP, HTTPS, SMTP, XML, SOAP. The Business Server Page (BSP) programming model is available for developing Web applications. This model consists of server side scripting and is similar to JavaServer Pages (JSP). The BSP programming model is based on ABAP and is completely integrated into the ABAP Development Workbench. All the reliable and proven features from the SAP application server are still available in SAP Web Application Server 6.10. It provides the platform for developing, executing, and operating ABAP based Web applications and Web services as well as classical SAP GUI based applications.

SAP Web Application Server 6.20 is available since June 2002. It is enhanced through a 1.2 compliant J2EE Server. The SAP Web Application Server 6.20 enables the development and deployment of ABAP-based or J2EE-based applications on the same machine. The Web development is enhanced through a tag library for the JavaServer Page (JSP) and Business Server Page (BSP) programming model. The tag library contains predefined user interface elements like easy buttons and input fields as well as more complex elements like trees, tables, and so on, with predefined built-in functions. Using tag libraries accelerates the development of professional and browser-independent Web applications. All the reliable and proven features from the SAP application server are still available in the SAP Web Application Server 6.20. It provides a platform to develop, execute, and operate ABAP or Java based Web applications and Web services as well as traditional SAP GUI based applications.

Is a development environment for Java included?

SAP Web Application Server 6.20 comes with many tools and plugins for Borland Jbuilder. Every plugin is also available in a standalone version that makes it possible to use those as tools for other development environments.

SAP Web Application Server 6.40 also delivers NetWeaver Developer Studio, a development environment for Java that is based on the Eclipse SDK, an Open Source tool originated by IBM. NetWeaver Devloper Studio comes with additional plugins like such for development of J2EE applications, Web Dynpro, a Data Dictionary, Web Services tools, and many other features.

Do ABAP developers have to learn Java?

No. Since with SAP Web Application Server there is no technology or feature that would be undoable with ABAP, there is no immediate need to learn Java. With BSP, there is also a sufficient technology for Web based development. In fact we think that in the foreseeable future any kind of applications can also be done with ABAP. However, in the future SAP may come up with more Java based technologies and applications, which may not be available on the ABAP side. These then would need the knowledge of the Java language and technologies.

Could I transport Java classes in the same way as in ABAP?

With Java Development Infrastructure SAP now provides similar features for Java as for the transport system in ABAP. The difference is that all Java related program objects are stored in a file system at runtime, while for development they carried out on the local development workplace, compared with ABAP where all related program objects are stored in the central database and the development is done in the central server by using remote access.

Nevertheless Java Development Infrastructure does include a database based version control system. Additionally there is an automatic Component Build Service and a Change Management System.

Could I use common users in ABAP and Java?

Yes. The ABAP base and the J2EE Engine of the server may use the same common user management of the system. There is no need for replication of the ABAP users (SU01) on the Java side. J2EE Engine uses the User Management Engine, that in turn is able to handle ABAP, LDAP od database driven systems for user management.

Where can I find documentation for Web Application Server?

The documentation for SAP Web Application Server comes, of course, with the product, but is also available in the Internet at help.sap.com.

What do I need to develop Java on the SAP Web Application Server?

For SAP Web Application Server 6.20 basic development in Java can be done with no additional tools then delivered with the product. When installing the JavaEU CD (No. 😎 you get all tools you need for basic development. Please follow the advice of your installation guide.

SAP Web Application Server 6.40 comes with SAP Netweaver Developer Studio, that includes a complete development environment for all means of SAP Web Application Server Java, that includes development tools for J2EE, Web Dynpro, Web Services, a data dictionary and other tools.

SAP NetWeaver Developer Studio is based on the open source platform Eclipse and was enhanced with many tools to satisfy development for the Java world of SAP Web Application Server.

Does SAP Web Application Server available for High Availability (HA)?

Yes, there are several measures to prevent unplanned downtimes eliminating single points of failure. Basically, all critical system components of the SAP Web AS can be configured redundantly. When one single component crashes a remaining component can take over the tasks of the failed one. The SAP Web AS can be used both in local fail-over and disaster recovery scenarios.

More information can be found in sapnet under alias /ha

What are the most important HA features of the SAP Web AS?

The SAP Web AS has built-in scalability and redundancy: Multiple front-ends can run against multiple application servers. Using load-balancing features (logon load balancing and Web Dispatcher), the requests will be directed to the best suitable application server. The database can be protected with common HA measures as clustering, parallel database, or standby databases. After a fail-over of the database, the work processes can reconnect and continue their work. A single SAP Web AS instance itself has a high reliability due to its proven memory management and application isolation features: A failure of a process only affects one single user session

Does SAP guarantee defined availability levels?

No, it is not possible to guarantee availability levels because the customer environments are very different and contain a lot of non-SAP components (for example, hardware, network). However, lots of our customers experience system availability of 99.5% and above.

Could I upgrade my existing SAP solution (for example, R/3 4.5) to the SAP Web Application Server 6.20?

No, this is not possible and was also not possible for previous SAP solutions. Then, the SAP Basis (which is now SAP Web Application Server) was in a composite with the application component. That bundle was shipped as a SAP Solution like R/3 4.5. The upgrade was always an upgrade of the whole bundle. This means that to use the SAP Web Application Server features you have to install a SAP Web Application Server separately in front of your existing SAP System and connect to that system using RFC, for example. Or you have to upgrade to the SAP solution, which is based on the SAP Web Application Server like R/3 Enterprise

Web User Interface Development

What is the Web Dynpro?

Web Dynpro is a runtime and development environment for creating easily adaptable Web based user interfaces. The Web Dynpro programming model goes a step further than the server side scripting models by providing graphical design tools that allow the development of the UI independently of the underlying runtime platform. The runtime coding will be generated for all platforms (Java and ABAP) out of these UI definitions.

What are Business Server Pages (BSP)?

The "Business Server Pages" (BSP) programming model is the server side scripting technology of the SAP Web Application Server. This has advantages when existing SAP logic, data structures and interfaces need to be implemented in a "native" Web application. A BSP page usually consists of HTML text which includes ABAP as a server side scripting code in special tags. The scripting code allows direct to access to all elements (function modules, database tables, ABAP objects, and so on) in the application server. It combines the advantages of the trusted SAP development environment with the well-known page-based approach for Web application development (like Microsoft ASP, Java JSP).

What are Java Server Pages (JSP)?

JavaServer PagesTM (JSPTM) technology allows Web developers and designers to rapidly develop and easily maintain, information-rich, dynamic Web pages that leverage existing business systems. As part of the JavaTM family, JSP technology enables rapid development of Web-based applications that are platform independent. JavaServer Pages technology separates the user interface from content generation enabling designers to change the overall page layout without altering the underlying dynamic content.

What is the benefit of using the SAP Java Tag Library or the BSP Extensions compared to plain HTML?

The HTMLB library provides predifined UI elements (Buttons, Input Fields, Tables) for JSPs and BSPs which speed up the development of typical Web applications enormously. Additionally, the HTMLB library allows the development of Web applications with a consistent look and feel, even in bigger development teams.

Connectivity & Web Services

What are Web services?

A Web service is a self-contained, executable entity that can be published, discovered, and accessed across a network using open standards. For the caller or sender, a service is a black box that may require input and delivers a result. Web services cover providing services for integration within an enterprise and across enterprises, on top of any communication technology stack, whether asynchronous or synchronous, in any format.

How do you describe Web services?

If a Web service is to be called by any application - no matter where it resides or how it was implemented - there needs to be a standardized language to describe the Web service. The Web Services Description Language (WSDL) meets this need best, and it is the language chosen by SAP to describe the Web services offered by mySAP Business Suite.

How and where can I find and publish Web services?

A description of Web services in WSDL is the first step. But if you want to locate useful business partners and services or publish your own services, you also need access to an easy-to-use directory. Universal Description, Discovery and Integration (UDDI), provides an ideal solution in the form of the UDDI specification and the UDDI Business Registry. (For more information, go to http://www.uddi.org.) While the UDDI specification describes in detail how to search for and register a Web service and its provider, the UDDI Business Registry catalogs in a public, live environment all the registered companies and the services they offer. You access the UDDI Business Registry either through a Web-based user interface or through XML-based messages described in the UDDI specification. The UDDI Business Registry is offered by SAP, IBM, Microsoft, and NTT Communications. SAP's node can be reached at http://uddi.sap.com.

How do I ensure that I can communicate with my business partners?

Despite the progress made in XML standardization, it is inevitable that partners involved in a business process will want to use different XML documents. What's more, the extreme heterogeneity of IT landscapes often makes it necessary to translate one XML document into another when you exchange messages. Until recently, proprietary solutions provided pretty much the only answer, but they virtually prevent you from using the transformations you have already defined on any other platform. eXtended Stylesheet Language Transformation (XSLT), a standard defined by the World Wide Web Consortium (W3C), provides a generic solution. XSLT uses the XML-based Stylesheet language to define a stylesheet that contains a description of the transformations required. An XSLT engine (capable of processing any XSLT stylesheet) applies these transformations to an XML document. Thus, the only aspect that is platform-dependent is the XSLT engine itself.

An implementation is already available on SAP Web Application Server and can be used to process W3C-compliant transformations based on XSLT. As of SAP Web Application Server 6.20, this function is available in the ABAP and J2EE environments.

How do I call Web services?

Calling Web services over the Internet requires an appropriate protocol definition. SOAP is a lightweight, standard communications protocol that makes it possible to call Web services in decentralized, distributed landscapes. Just like the standards mentioned earlier, SOAP is XML-based. It defines an envelope around an XML message, describing what the message looks like, how it is to be processed, and a range of technical conventions. SOAP is already supported in SAP Web Application Server.

By supporting XML and open industry standards, SAP NetWeaver offers an extensive solution for process integrating across heterogeneous system landscapes. What's more, SAP standard interfaces are already offered as Web services.

How is the compatibility of evolving standards addressed?

Although the above standards are commonly accepted, new ones will appear while others evolve to meet new requirements. This ongoing evolution of standards increases combinatory and may decrease reliability of Web service-driven business processes. To address this challenge, SAP became co-founder and Board member of the Web Service Interoperability Organization (WS-I). WS-I is committed to promoting interoperability among Web services based on common, industry-accepted definitions and related XML standards. The goals of WS-I are to provide implementation guidance to ease Web services adoption; to promote consistent and reliable interoperability among Web services across platforms, applications, and programming languages; to increase industry adoption of Web services; and to ensure the continued evolution of Web services technologies. SAP NetWeaver already conforms to WS-I Basic Profile 1.0, the specification that defines the common denominator for Web service interoperability.

Which Web services are available out of the box in SAP Web AS?

Every self-contained, modularized functionality - provided by SAP as part of mySAP Business Suite or developed by a customer or partner - can be made available as a Web service. Therefore, they can be used across the Internet over standard protocols, and they can easily be integrated into any development framework. This includes BAPIs, ABAP Remote Function Modules, IDocs, and Enterprise Java Beans. The full range of SAP's business functionality can be exposed as Web services very easily, based on the native integration of Internet technology and support for the Web services paradigm.

Which communication protocols are supported?

Currently, SOAP and SOAP with Attachments are the commonly accepted standards in the Web service arena. Thus, SAP Web Application Server fully supports these standards on top of HTTP/HTTPS. Further requirements for additional transport protocols can easily be fulfilled through the extensible and flexible Web Service Framework of the SAP Web Application Server.

Authentication and Single Sign-On with SAP NetWeaver

Questions

1. What is the difference between authentication and Single Sign-On?

2. What options are there for authentication for the SAP Web Application Server?

3. What options are there for single sign-on for SAP Web Application Server?

4. Must a user have the same password in all systems that are part of an SSO landscape?

5. After a year, Single Sign-On suddenly no longer works. What could the reason for this be?

6. How do SAP logon tickets work? Can they also be used to include non-SAP products in an SSO environment?

7. Are authentication and SSO connected with Central User Administration (CUA)?

8. Are authentication and SSO connected with LDAP user data synchronization (LDAP Connector, LDAPMAP)?

9. How do authentication and SSO work in SAP Enterprise Portal?

10. Does SAP offer a Trust Center?

11. Where is the SAP Passport physically stored?

12. SAP Passports - where can I learn more about it?

13. Does SAP also support newer standards, such as SAML or the Liberty Alliance Project?

14. Where can I find more information about documentation about this topic?

Answers

1. What is the difference between authentication and Single Sign-On?

In computer security, authentication is the process by which a computer, computer program, or another user attempts to confirm that the computer, computer program, or user from whom the second party has received some communication is, or is not, the claimed first party.

Single Sign-On is the subsequent automated authentication for additional systems after the user has logged on once. In this case, the authenticating system passes the user information to the subsequently called system. This is done in the background; that is, the user does not need to authenticate himself or herself again after his or her first logon.

2. What options are there for authentication for the SAP Web Application Server?

2.1 Web-based authentication methods

• Anonymous/ guest access

• User ID/ password (only authentication, not Single Sign-On)

o Form based

o Basic authentication

• X.509 digital certificates

• SAP Logon Tickets

• External authentication methods

o HTTP header variable authentication (not ABAP except for X.509 certificate information forwarding)

o Security Assertion Markup Language (SAML – only Java)

o Through Java Authentication and Authorization Services (JAAS – only Java). External authentication can be performed using a JAAS module with SAP Web Application Server 6.30. The module is not supplied by SAP, but can be implemented by customers and connected using a standardized interface. JAAS allows you to set a separate authentication mechanism for each application

2.2 SAP GUI for Windows

• SAP-certified SNC product, external security product (authentication takes place outside of SAP system)

• SAP provided wrappers for Microsoft Windows authentication mechanisms:

o Windows NTLM

o Windows 2000 Kerberos

• SAP Shortcut Method (SAP Logon Ticket)

SNC is an integration layer with which a partner product for user authentication can be included in the SAP system landscape. SNC can only be used with SAP protocols (DIAG, RFC, SAP ITS AGate/WGate), and not with the Internet protocol HTTP. This means that it cannot be used with SAP GUI for HTML; only SAP GUI for Java und SAP GUI for Windows can be secured using SNC. Pluggable Authentication Service (PAS) can be used for Web-based access - see below.

In addition to the integration of a third-party product, you can also use existing authentication infrastructures, for example for Microsoft Windows NT or Microsoft Windows 2000 through SNC. For an overview of the partner products certified by SAP for this interface (which is based on the Generic Security Services [GSS] standard), see Security Partners.

The user logs on to the partner product; the SNC user name is then mapped to the SAP user name. The SAP system accepts the logon information, and additional authentication is not required. Security mechanisms of different strengths can be used, such as, such as Public-Key cryptography or Kerberos, depending on the product you are using.

SAP provides mapping libraries free of charge for Microsoft Windows NT and Microsoft Windows 2000. These do not contain any cryptographic functions themselves, but rather access the relevant Microsoft Security Provider APIs. These can be used instead of a partner product.

For more information, see http://service.sap.com/security > Security in Detail > Secure System Management

2.3 SAP WebGUI

• X.509 client certificate

• SAP Logon Ticket

**

3. What options are there for single sign-on for SAP GUI?

The procedure used for Single Sign-On depends on the SAP GUI in use.

SAP GUI for HTML (Available with SAP Web AS and SAP ITS)

• SSO can be implemented using SAP Logon Tickets. This is a proprietary SAP solution, contain in the standard version of the software. For more information about SAP Logon Tickets, see How do SAP logon tickets work?.

• SSO can also be implemented using digital certificates - see authentication. There are advantages and disadvantages to this approach, as described under Which is the most secure option?.

• For the ITS, you can also implement external authentication using the Pluggable Authentication Service (PAS). For more information, see Is it possible to connect products from external vendors to implement authentication and SSO outside the SAP system. For more detailed information, see the relevant documentation.

SAP GUI for Java

• SNC can be used in this case; see also Is it possible to connect products from external vendors to implement authentication and SSO outside the SAP system.

SAP GUI for Windows

• You can implement SSO using SNC through a partner product; see also Is it possible to connect products from external vendors to implement authentication and SSO outside the SAP system.

• A cost-effective alternative to a partner product is to use Microsoft Windows NTLM or Microsoft Kerberos, which is contained in Microsoft operating systems at no additional cost. This variant can only be implemented in a purely Microsoft environment; if other components are used, you must purchase an additional partner product (for more information, see SAP Note 352295). For information about certified partners that provide suitable products for SNC, see Security Partners.

• You can implement SSO using SAP Shortcuts. These are available as of SAP R/3 4.0B under Microsoft Windows NT and Microsoft Windows 95 installations. SAP Shortcuts are useful for frequently used transactions or reports; a shortcut of this type means that they can be started directly from the desktop. System data, the name of the transaction or report, and the user’s logon data are stored in the shortcut. The password can also be stored here; this means that it is not necessary to enter it again during the logon. However, we recommend that you exercise caution in this situation: SAP Shortcuts store the logon data directly on the front end. As any user that can access the front end desktop can also activate the shortcut, if there is a lack of security at the front end, there is a danger that the logon data will be misused. The SAP Shortcut could also be copied to another front end computer, if access to the file system is not appropriately secured. Passwords should therefore only be stored in SAP Shortcuts if there is adequate security at the front end. You should also note that this is not a genuine Single Sign-On scenario, as each SAP Shortcut is a separate logon to the relevant SAP system. However, an actual Single Sign-On solution for SAP Shortcuts can be implemented in connection with SNC. As of SAP R/3 4.5, the SNC procedure for SSO also applies for SAP Shortcuts. For more information about SAP Shortcuts, see the SAP R/3 online documentation (as of SAP R/3 4.5) under General Information > Getting Started with R/3 > Daily Start-Up/Shutdown of the R/3 System > SAP Shortcut and SAP Note 99054 .

4. Must a user have the same password in all systems that are part of an SSO landscape?

No. The passwords can be different in the different systems; this does not affect the setting up of Single Sign-On in any way.

5. After a year, Single Sign-On suddenly no longer works. What could the reason for this be?

This error can occur due to an expired server certificate on the system that issues the SAP Logon Tickets. Certificates for servers, which are signed by a Certification Authority (CA) such as the SAP Trust Center Service (SAP_CA), are usually valid for a year. Although the SAP Logon Tickets for SSO are still issued after this period, an error message is triggered by the receiving system when it checks the certificates. "Self-signed" certificates, which are not issued by a CA, but by the server itself, usually have a significantly longer validity period. To avoid the certificates expiring in future, a new report has been created that provides warning in good time before the expiration of the validity of installed certificates. For more information about this, see SAP Notes 572035(Warning about expired security certificates) and 499386 ("Invalid logon ticket" for CA certificates).

6. How do SAP logon tickets work? Can they also be used to include non-SAP products in an SSO environment?

SAP Logon Tickets generate SSO for SAP solutions with Web-based access, that is, for applications that are based on SAP Web Application Server or SAP ITS. An SAP Logon Ticket is used only for the purposes of SSO and cannot be used for initial authentication. To obtain a Logon Ticket, the user must first logon using a different procedure, such as a user name and a password or a digital certificate. The Logon Ticket is contained in a cookie that is forwarded to the user’s Web browser by the issuing system. It is forwarded from the user’s browser to the subsequently called systems that are integrated into the SSO landscape. The user logs on only once. The ticket itself contains the user name, a timestamp, information about the issuing system, and a certain validity period, which can be configured using a system profile parameter , and which can range from a few minutes to several hours. To protect the authenticity and the integrity of the ticket, it is digitally signed by the issuing system. The prerequisite for the use of SAP Logon Tickets is the use of identical user names in the systems that issue and accept the ticket. The SAP Enterprise Portal is an exception to this rule; in this case, an external user name can be specified in the ticket itself.

The advantage of SAP Logon Tickets over an SSO solution using digital certificates is that the (person-related) Public-Key Infrastructure, which is required to administer digital certificates and can be cost-intensive, is not required. Logon Tickets that have already been checked can be buffered for the duration of their validity, which improves performance. To avoid it being stolen through interception, the ticket should be protected using SSL. Many external systems can also be configured to accept and verify SAP Logon Tickets. You can do this using a library provided by SAP, which is then integrated into the external software. The following SAP systems can issues SAP Logon Tickets: systems as of SAP Basis 4.6C (see SAP Note 358469), SAP Web Application Server 6.10 and above, SAP Enterprise Portal 5.0 and above. SAP systems as of SAP Basis 4.0 can accept SAP Logon Tickets (see SAP Note 177895).

7. Are authentication and SSO connected with Central User Administration (CUA)?

No. Central User Administration simply centralizes the administration of user and role data across a large number of SAP systems. The data contained there only applies after the user has already logged on; authentication and, if appropriate, Single Sign-On have therefore already taken place. Setting up a CUA therefore does not affect authentication and SSO procedures in any way; however, it does provide the basis for the use of SAP Logon Tickets due to the assignment of uniform cross-system user names. Implementing CUA also does not provide any form of password synchronization between the central and child systems. Initial passwords are an exception to this rule, and it is also possible to reset passwords. This can be done both in the local child systems and in the central system (with distribution to selected systems).

8. Are authentication and SSO connected with LDAP user data synchronization (LDAP Connector, LDAPMAP)?

No. Since SAP Basis 4.6, SAP systems have had an LDAP Connector, which allows connection to an LDAP directory. However, only individual accesses to the LDAP directory are possible in this version. Data synchronization between SAP R/3 and the LDAP directory was standardized with SAP Web AS 6.10, and mass synchronization is possible. The data synchronization applies only to user and role data, however. Authentication and SSO functions are provided neither using the LDAP Connector nor through transaction LDAPMAP. For information about transferring an external authentication to the LDAP directory, see Is it possible to connect products from external vendors to implement authentication and SSO outside the SAP system?.

9. How do authentication and SSO work in the SAP NW Portal?

The SAP Netweaver Portal offers the same possibilities for user authentication as SAP Netweaver AS Java. In Addition Account Aggregation ist supported. With this procedure, a portal user (or a user group) is associated with the user name and password for an application. This allows SSO even for applications that cannot accept SAP Logon Tickets. The administrator, or the user can perform the required mapping using a graphical interface. The portal stores the data in the portal database. For security reasons, all password information is encrypted using a triple DES algorithm.

For more information about authentication and SSO in the SAP Enterprise Portal, see Solution in Detail: Security in the mySAP Enterprise Portal.

10. Does SAP offer a Trust Center?

Yes. For more information, see the SAP Service Marketplace using the alias TCS. SAP offers client certificates, server certificates, for example, for Secure Socket Layer, and router certificates for service connections through SAPRouter.

**

11. Where is the SAP Passport physically stored?

Passports are stored wherever the browser stores its certificates. In the case of Microsoft Internet Explorer, this is the registry. You can usually also replace the browser storage using a third party product, for example a smart card or a central Personal Security Environment (PSE) server.

**

12. SAP Passports - where can I learn more about it?

On SAP Service Marketplace at htttp://service.sap.com/~form/sapnet?_SHORTKEY=01100035870000282722& you find a detailed description of the process in the presentation "SAP Passports - How to get started". To test SAP passport functionality in your SAP Workplace, please generate a Certificate Request (CR) and send message on component BC-SEC to SAP via SAP Net R/3 Frontend (OSS) or SAP Service Marketplace. We will send you the necessary certificate for your Registration Authority (RA).

**

13. Does SAP also support newer standards, such as SAML or the Liberty Alliance Project?

Security Assertion Markup Language (SAML)

With SAP Web Application Server 6.30, the SAP J2EE Engine can accept SAML tickets for logon in the browser artifact scenario. For more information about SAML, see http://www.oasis-open.org. For information about SAML in the SAP context, and about other security standards, see http://service.sap.com/security > Security in Detail > Security Standards

Liberty Alliance Project

SAP is a sponsor of Liberty Alliance Project, an initiative to establish a standard for federated digital identities on the Web. Its aim is to use specifications to develop open standards that can be used internationally across industries. For more information about the Liberty Alliance, see http://www.projectliberty.org/ .

14. Where can I find more information about documentation about this topic?

For documentation, manuals, and other information material, see the SAP Service Marketplace at

http://service.sap.com/security > Security in Detail > Secure System Management

http://service.sap.com/security > Security in Detail > Trust Relationship Management

For SAP Notes about this topic, see http://service.sap.com/security > SAP Security Notes. SAP Notes about SNC and the following SAP Notes are of particular interest:

• 138498 Single Sign-On Solutions

• 177895 Refitting the mySAP.com Single Sign-On Capability

• 389176 Composite Note: SAP Trust Center Service (TCS)

What is the default security constraint for Enterprise JavaBeans (EJB) methods?

It is possible to deploy EJB components without setting security constraints. The default security for a method is "unchecked" which means that no checks are made by the container and this will allow all clients to invoke it.

Is it possible for a bean to use a service or a library?

Yes, it is possible. You must specify a reference from the application to that component in order to have a reference between the class loaders. This could be done in the application-j2ee-engine.xml or after deploying the application by the changeref command of the deploy service. If you want to use an object from JNDI (e.g. bound by a service) you must specify a reference to it in the ejb-j2ee-engine.xml

Can I start a thread from a bean?

No, according to the Enterprise JavaBeans 2.0 Specification (Appendix C EJB 1.1 Runtime Environment) thread management is performed by the EJB Container and Enterprise Beans must not attempt to manage threads, which includes starting, stopping, suspending, or resuming a thread; or changing a thread?s priority or name. Enterprise Beans must not attempt to manage thread groups either. These requirements ensure that the Container properly manages the runtime environment.

What happens if the same bean is accessed concurrently from several clients?

For session beans the usual client behavior must be to create its own session object (by any of the Home interface's create methods), use it and then remove it. Sharing the session object between clients and transactions may cause problems. Here are some details :

• Stateless session beans: Each client accessing a session object gets a pooled bean instance for each request. Concurrent access makes no problem.

• Stateful session beans: If a second client tries to use the same EJBObject (that is uses the same session) he/she will get an exception. If the stateful bean has container managed transactions, the instance is "associated" with a transaction. That means that if a transaction T1 calls a business method, no other transaction is allowed to invoke this instance till the end of T1.

• Entity beans: The entity container is common for BMP and CMP and uses Commit option C (EJB2.0 Chapter 10.5.9). That means that for every transaction that uses a bean instance (representing a certain persistent entity) there is a copy of the instance. Concurrent access to the persistent data is managed by locking mechanisms. For BMP entity beans the bean provider is responsible for locking, whereas for CMP entity beans the EJB Container manages the concurrent access. It uses either the Enque server or the database locking mechanisms.

What exactly happens when starting/stopping an EJB application (SAP J2EE Engine 6.30)?

start_app: First, the files that are needed by the container during start (i.e. jar files and other configuration stuff) are downloaded from the DB. Then the descriptors for the application are built and they are used to create the naming contexts for each bean. After that the specific EJB class loader for the application is created and registered, the containers for each EJB are initialized and their EJBHomes and/or EJBLocalHomes are bound to JNDI. Persistence Managers for the CMP entity beans are created and initialized. Finally, the pools for stateless, entity, and message-driven beans are initialized. The default initial pool size is 0 - this means that no instances will be created (and respectively no setSessionContext/setEntityContext/setMessageDrivenContext wil be invoked) at start time. If you wish, you can specify the initial pool size in your ejb-j2ee-engine.xml, like this:

<enterprise-bean>

<ejb-name>MyStatelessBean</ejb-name>

<session-props>

<property>

<property-name>InitialSize</property-name>

<property-value>10</property-value>

</property>

</session-props>

</enterprise-bean>

In the above example 10 instances of MyStatelessBean will be created at start time.

stop_app: First, the EJBHomes and/or EJBLocalHomes are unbound from JNDI and all EJB naming contexts are destroyed. Then the containers and pools for each EJB are destroyed too. Finally, the EJB class loader for the application is unregistered.

May I deploy the Web components as EAR1 and the corresponding EJB components as EAR2?

Although this scenario is not described in the specification, it is really commonly used and has to be supported. In this case, the dynamically generated P4 stubs are used. If you have the interfaces of the bean in the servlet's ear then there must be also all other helper classes - return types, parameters, exceptions (a common issue is that the EJBObject class can not be loaded and the most probable reason is this). The other possibility is not to have the bean's interfaces in the servlet's ear. Then you should have a reference between the applications. But don't use reference if you already have the interfaces This may cause a ClassCastException.

How are the bean instances/EJBObject/EJBHome objects distributed in the cluster environment? Does the client still access the same cluster node?

Every bean component deployed on the J2EE Engine is loaded on every server node of the cluster.

Bean instances (i.e. instances of the bean class) live in every server node.

The distribution of the remote EJBHome and EJBObjects is managed by the remote protocol (the default one for the J2EE Engine is P4). When a remote object is created on a server node the P4 protocol manages a connection from the client to that object. That means that the client is always connected to a certain server node.

What happens if the server node to which the client is connected crashes? Is there a failover mechanism?

If the server node to which the client is connected crashes, the remote protocol redirects the call to another server node where a new remote object will process the subsequent client calls. The failover mechanism is different for the diffenrent types of beans:

- Stateless session beans have no state and their failover is implemented only by redirecting the call to another server node.

- Stateful failover serializes stateful bean instances in a persistent storage (the file system or the system database). Thus the last state of the session is replicated.

- Entity beans are persisted in the database and that's why they are synchronized with the consistent data in the database. The entities are locked in the Enque server and then loaded from the database. If a server crashes during an entity bean update, the transaction will be considered as invalid. The next request to the same entity will be dispatched to a working server and the last committed state will be loaded from the database.

Should I clear/reinitialize bean's fields inside ejbPassivate/ejbActivate?

Stateful session- and entity beans: For minimizing the jndi lookups, my bean looks up some references (jndi context root, ejbHome of related beans, a datasource object, UserTransaction object) inside setSessionContext/setEntityContext (or ejbCreate) and it stores it locally into private fields.

Should they make the lookups again inside ejbActivate() and should they set the references to null inside ejbPassivate()?

Stateful sessions can keep references to some not serializable object after ejbPassivate() (EJB2.0 Chapter 7.4.1). These objects are jndi contexts - the root or any of its subcontexts; UserTransaction object, SessionContext object; EJBHome, EJBObject, EJBLocalHome, EJBLocalObject references. These references may not be set to null in ejbPassivate and that means not to be initialized again in ejbActivate. The opposite applies accordingly for any kind of resources and resource factories - data sources, connections, sockets, etc.

For entity beans it is quite different. After ejbPassivate() is called to a bean it applies a 'passive' state. The passive instances are kept in a pool and are used for finder methods execution. That means that they may have any kind of references - data sources, connections, etc. We recommend not to keep open connections in a passive instance because this may cause problems (like never releasing the connections).

Do references to plain Java classes survive the passivation/activation - ( e.g. I use dao class instances)

Yes, but the classes must implement java.io.Serializable (again EJB2.0 Chapter 7.4.1)

Should EJB instances set their references to null inside ejbRemove (for clean up)?

After ejbRemove() entity beans go in a 'passive' state, and just like in ejbPassivate, there is no reason to set their references to null, but it's a good idea if they close all open connections. Session beans stop their existence after ejbRemove(), so they MUST close all open resources. The ejb instances will be garbage collected so there is no need to set their references to null, but if an open resource remains it may never be released.

Should I call remove() to a session bean in order to clean up the associated EJBObjects (stub/skeleton)?

For stateless session beans it makes no sense to invoke the remove() method as this does not trigger the invoking of the ejbRemove() method on any bean instance.

For stateful session beans cleaning up EJBObjects is important as they are remote objects and cleaning them means removing all proxy objects that are used by the remote protocols. The stateful session beans' remove() method triggers invoking the ejbRemove() method on the corresponding bean instance. That is why invoking it is important if there is a specific business logic implemented in the bean's ejbRemove() method. Otherwise (if the session bean's client hasn't explicit reason to invoke remove) it may omit it. For these cases the session container has a timeout for the active sessions (active means EJBObjects/EJBLocalObject that are obtained by a home's create method and are not removed). If such sessions are not used for a specified period they are removed and the container cleans up all related objects. To avoid keeping objects that are not used on the server for a long time, it is a good design for the applications to invoke remove() always when they are able to do it.

Is the stateful bean the better choice than stateless because of the possibility of utilizing the SessionSynchronization interface?

The answer is no, it is not possible to claim that the one kind is better than the other. They are just different and it depends on the application design which of them is more suitable. SessionSynchronization interface is useless for stateless sessions because the instances are not associated with the session - they are stateless. That means that different methods in the same session (through the same EJBObject) could be (and most probable are) invoked on different instances so they must not keep any information between method calls.

6.30 stateful session beans: How does the passivation/activation work?

The EJB Container uses the LRU (least recently used) algorithm for choosing which stateful session bean instances to be passivated. The instances are serialized and written into a persistent storage (the file system or the system database).

Is there a performance difference between stateful and stateless session beans?

Until SP4 the differences in the implementation were not big. Therefore, we do not expect a significant difference in the performance.

Since SP5 the remote communication for stateless session beans is changed in a way that only one remote object is used for all EJBObjects. This makes the create methods very fast as they are executed only on the client side without executing a remote call.

What is the performance of CMP- versus BMP entity beans with 6.30?

When CMP entity beans can be used, they have proved to be faster than BMP beans. However, the results may vary and depend on the application and its behavior with the persistent data. According to our measurements with the SPECjAppServer 2003 benchmark:

• CMP beans are more scalable than BMP beans. On the same configuration, the CMP version of the benchmark application processes the requests of 50% more clients than the BMP version.

• The response times for the different transactions with CMP are between 20% and 100% better the response times with BMP.

The life-cycle management of the entity beans is the same for BMP and CMP. The better performance is due to optimizations in the persistence management.

Entity beans: At which point of time will ejbLoad/ejbStore be called?

ejbLoad: before a first method call inside a new transaction.

ejbStore: prior to transaction's commit - beforeCompletion() method of javax.transaction.Synchronization interface (JTA) is used. In addition, for CMP, ejbStore is called before finder methods: the updated data is flushed into the database (for performance reasons this is optional - there is a tag "switch-off-storing" in persistent.xml). The special thought here is that storing before finder methods is not specified for BMP, but if a transaction has accessed both BMP and CMP beans and after that it calls a CMP finder method, then ejbStore will be called for all BMP and CMP beans.

What is the "n+1 finder problem" ?

Entity beans by default force you to first load a collection of keys for the dataset you want to access and then go through this set and get the data records key by key. This results in n+1 round trips to the database, where "n" is the number of records needed.

Does the 6.30 container cache the whole entities after a finder method call? How can the "n+1 finder problem" be avoided?

a. For CMP?

With the default configuration only primary keys are loaded. When a single entity is accessed, it is loaded and locked regarding the transaction's isolation level. The "n+1 finder problem" can be avoided be specifying the load-selected-objects property for the corresponding finder method. Then the whole entities will be loaded in the finder method and will be cached until the end of the transaction.

b. For BMP?

Finder methods are implemented by the bean provider. The EJB Container extracts only the primary keys of the selected entities. Each entity is loaded on demand ? the first time it is accessed. The architecture does not allow the EJB Container to implement any caching and thus to solve the "n+1 finder problem".

May I avoid the "n+1 finder problem" using ejbHome methods instead of ejbFind methods?

Yes. ejbHome methods can be used for operations like increaseAllSallaries(). This is done instead of invoking a finder method and then using business methods on every single instance of the resulting data. With BMP this whole operation can be made with a single query and is the only way to avoid the "n+1 finder problem".

CMP Entity beans: Which kind of data source has to be used: Open SQL/Native SQL/Vendor SQL?

All stated possibilities are allowed.

What is the difference between Open SQL/Native SQL/Vendor SQL?

The three modi are adjusted from the administrator for the engine for every datasource. It defines whether this datasource is using SAP persistence level Open SQL or something in between.

1. Open SQL: You will have full support of the SAP persistence level. This means that SQL requests have to be written in Open SQL grammar, thus ensuring they will run with all DB's supported by SAP. You can use statement cache, SQL trace and the table buffer. Buffering tables has to be configured in.

2. Native SQL: You don't use Open SQL, but parts of the persistence level, that allows you to use the statement cache and SQL trace.

3. Vendor SQL: You are on plain JDBC using the vendor specific driver. No special support for persistence features. You still benefit from serverside connection pooling and transaction management service.

Should I lock the table/entity explicitly when implementing persistence using EJB components?

If using: - session beans - entity bean with BMP - entity beans with CMP?

Answer: When you use session beans or BMP you have to make explicit locking - the bean provider is responsible for the synchronization.

For CMP the synchronization is managed by the Persistence Manager, so the application must not do any kind of locking

If I have to lock do I use the Enque Server interfaces?

All applications that use common persistent data must use the same locking mechanism in order to synchronize their access to the data. Therefore, it depends on whether your persistent data can be accessed by other applications and what locking mechanism they use. If they use the database locking mechanisms you must also use them. If they use the Enque server locking, you must also use it. The EJB Container provides both options for CMP entity beans.

If you use the Enque server locking you must do it by the TableLocking API from the applocking service.

CMP: How does the EJB Container (Persistence Manager) manage the locking?

Persistence Manager uses only pessimistic concurrency control based on different isolation levels and locking in Enque server or in the database. If you have a read-only CMP bean it is better to specify this when describing its O/R mapping in persistent.xml descriptor. Thus you will escape any locking for that bean and will increase the performance.

Which kind of transaction should my EJB bean use: local(JDBC) or global(JTA)?

At best, EJB beans should not start end-to-end transactions explicitly at all. They rather should use the container-managed transaction demarcation and rely on the transaction management done by the EJB Container. Entity beans must use the container-managed transaction demarcation. If you need the explicite (bean-managed) transaction demarcation for a session bean, only JTA transactions must be used.

What is the default transaction attribute for container-managed transaction demarcation?

It is possible to deploy EJB components with container-managed transaction management without having set the transaction attributes for metods.

The default transaction attribute is :

• "Supports" for session which means,

a. if a client is part of a transaction: the call is executed in the same transaction;

b. if a client has no transaction: the call is executed without a transaction context.

• "Required" for entity beans which means,

a. if a client is part of a transaction: the call is executed in the same transaction;

b. if a client has no transaction: a new transaction is started for executing the call.

• "Not Supported" for message-driven beans which means the call will be executed without a transaction context

(BMP) Entity beans: During JTA transaction commit the method ejbPassivate() is called. Why ?

Our EJB Container uses the 'Commit option C', i.e. it associates an active bean instance with a JTA transaction. At the end of the transaction ejbStore() method is invoked and the instance is passivated (returned to the pool). Before passivating an instance, the EJB Container has to call the method ejbPassivate().

When should I use a plain Java RMI client? Which libraries does a Java RMI client need?

A plain Java RMI client is very convenient for small EJB components testing purposes. However, there is no specification for such an RMI client and it may not work correctly in certain situations, e.g. it cannot manage transactions. With regard to J2EE the only possible clients of an EJB bean are appclients, Web components, and other EJBs.

In order to access the EJB components an RMI client needs the libraries:

• The ejb-client jar of your deployed EJB application. You can retrieve it either through the runtime view of deploy service in Visual Admin, or through the command shell on the server (using the command CLIENTJARS from DEPLOY group).

• The SAPJ2EEEngineClient.jar library as provided inside the Engine's build procedure.

• The EJB20.jar library

Q: What is an external-facing portal?

A: An external-facing portal is an implementation of the SAP NetWeaver Portal as a public Web site.

An external-facing portal is open to the internet, providing content to anonymous users, internal employees and business partners and enabling users to self-register in order to access additional content and to personalize the portal.

An external-facing portal uses features of the portal that provide Web-like behavior (for example, use of the browser navigation buttons) and reduce the amount of resources required to view portal pages.

Although not always appropriate for certain resource-rich applications, the external-facing portal can boost ROI by using the same platform for the company's internet and intranet implementations.

Q: What version of NetWeaver do I need to implement an external-facing portal?

A: SAP NetWeaver ’04 SPS 14 or higher, or SAP NetWeaver 2004s SPS 6 or higher.

Q: Where can I find documentation about implementing an external-facing portal using SAP NetWeaver Portal?

A: The most current documentation is available on the Help Portal (help.sap.com) at:

• SAP NetWeaver 2004s: SAP NetWeaver Library &#61664; IT Scenarios at a Glance &#61664; Running an Enterprise Portal &#61664; Implementing an External-Facing Portal.

• SAP NetWeaver ’04: SAP NetWeaver Library &#61664; SAP NetWeaver &#61664; People Integration &#61664; Portal &#61664; Special Topics &#61664; Implementing an External-Facing Portal.

Q: Where can I find the limitations of implementing an external-facing portal using SAP NetWeaver Portal?

A: SAP Note 877188 and SAP Note 853509.

Q: Why shouldn’t I use the external-facing portal for internal implementations?

A: It is recommended not to use this solution for internal use because some functionality that is commonly used for internal implementations is not supported.

Specifically, session management and WorkProtect mode are not supported as they require the use of the client framework JavaScript. Therefore, some standard SAP content – such as Web Dynpro, SAP business packages and KM (especially collaboration) – that uses these features are also not supported.

In addition, to get the full benefit of the performance improvements in an external-facing portal, the content must be “light” and supported by the light framework page. Content in internal implementations generally does not meet these requirements. For more information on recommended content for an external-facing portal, see the Content section.

Q: Should I use the provided light framework page for my external-facing portal implementations?

A: Your external-facing portal should use the light framework page, but we recommend that you customize or replace the out-of-the-box navigation iViews within the light framework page. You can easily do this with the Navigation and Framework tag libraries.

Content

Q: What content is recommended for an external-facing portal?

A: Content within an external-facing portal must be supported by the light framework page. And in order to get the full performance benefits of an external-facing portal, content should also be “light”.

Q: What content is not supported by the light framework page?

A: The following types of content are not supported:

• Web Dynpro

• SAP business packages

• Collaboration rooms (see below for more information on Knowledge Management)

These applications and business packages make use of the session termination and WorkProtect mode features of the portal, which are not supported in the light framework page.

Q: What content is considered “light”?

A: Content that does not use a lot of resources is considered “light”.

The following are guidelines for creating “light” content:

• Use static content as much as possible.

• Avoid HTMLB.

• Avoid client-side eventing (specify in the portalapp.xml an EPCFLevel value of 0 for no eventing).

• Use the navigation tag library for navigation links.

• Use page layouts with custom iView trays. The default iView tray uses HTMLB.

• Do not create Related Links for iViews and pages, as the Related Links iView is considered "heavy" content.

• Make sure that any dynamic navigation iView for your content is also light.

• Avoid the out-of-the box Knowledge Management iViews.

• Avoid using EPCM.doNavigate Links; use ?NavigationTarget= links instead, to avoid loading the EPCM framework.

Q: What content is considered “heavy” and not as suitable for an external-facing portal?

A: The following types of content are considered “heavy”:

• HTMLB

• Knowledge Management iViews

Q: Can I still use HTMLB and client-side eventing in an external-facing portal?

A: Yes, however, the portal will not enjoy the performance benefits from the light framework page. The performance impact from HTMLB is much more significant than from client-side eventing.

Q: Can I still use Knowledge Management (KM) in an external-facing portal?

A: Yes, but with the following restrictions:

• KM iViews are considered “heavy” content.

Although you can run KM iViews in the light framework page of an external-facing portal, a portal running these iViews does not enjoy the performance benefits of the light framework page.

• Browser functionality (that is, the use of the browser’s navigational buttons, such as Back, Forward and Add to Favorites) is not supported within KM iViews.

• KM content may not be indexed by search engines.

• KM content cannot be accessed via the quick links implementation.

Q: Are collaboration rooms supported in an external-facing portal?

A: No.

Q: Can I run .NET iViews in an external-facing portal?

A: Yes, but some HTMLB and other JavaScript files will be loaded automatically, making such iViews not as light.

Navigation and the Light Framework Page

Q: How is navigation different in an external-facing portal?

A: In an external-facing portal, the light framework page displays portal pages in a single frame.

When a user clicks on a navigation link, the following occurs:

• The browser retrieves new content for the entire browser window.

With the standard framework, new content is generally retrieved for the desktop innerpage only.

• The URL for the current page is displayed in the browser address field.

With the standard framework page, the URL for the portal’s home page is generally displayed.

Q: How is the light framework page assigned to users?

A: Administrators create desktop rules to assign desktops to different users.

A desktop is a combination of a framework page and a theme. Desktops can be assigned based on such parameters as the user name, the user groups to which the user belongs, the portal alias in the URL, or the bandwidth of the user's connection.

Q: Is it possible to switch between the light and standard framework page while a user is logged in (for example, in order to display static content in the light framework page and KM or Web Dynpro content in the standard framework page)?

A: No.

As display rules are used to provide a user with the relevant desktop when logging on, the user receives a framework page that cannot change until the user logs off. If the user then logs on again, the user could receive a different framework page if a different user name or URL is used.

However, it is possible to provide a light desktop containing the light framework page to all anonymous users and, then, provide the standard framework page when the user logs in.

Q: Will the pages in my external-facing portal be indexed by internet search engines?

A: Yes. Since navigation links in an external-facing portal include a complete URL that uniquely identifies a specific navigation node, search engines will be able to index portal pages.

However, KM content contained within KM iViews is not indexed.

For further information on how to make your portal searchable, refer to the search engines Web master guides.

Q: Can I use styles that are set in the Theme Editor with my light navigation iViews?

A: The default light navigation iViews that come with the portal contain styles that can be customized using the Theme Editor. These styles are listed in the Theme Editor under Light Top-Level Navigation and Light Detailed Navigation.

You can create your own light navigation iViews by copying the default light navigation iViews and making modifications, while keeping the styles already defined in these iViews.

In your light navigation iViews, you cannot use styles set in other areas of Theme Editor, nor can you create your own styles and link them to the Theme Editor.

Tag Libraries

Q: Can I use the Navigation, Framework and Layout tag libraries to create navigation iViews and custom layouts for the standard framework page?

A: Yes.

User Management

Q: How is user management configured in an external-facing portal?

A: User management is configured just as in a standard portal implementation, except that anonymous users are given access to content.

In an external-facing portal, administrators must do the following:

• Enable anonymous users by opening the portal to the internet and configuring the portal to accept anonymous users. Anonymous users can access the portal with the

By default, anonymous users are given access to the portal.

• Map anonymous users to a specific user defined in the portal.

Guest is the default anonymous user, and this user is part of the Everyone, Anonymous Users and Guests groups.

• Assign content to this user, or to the Anonymous Users group.

• Map registered users to groups.

By default, self-registered users are assigned to the Everyone group. You can configure the system to assign registered users to one or more specific groups.

• Assign content to the groups to which self-registered are assigned.

Performance

Q: How is performance improved in an external-facing portal?

A: An external-facing portal makes use of the light framework page, which displays portal content in a single frame. This framework page includes navigation iViews that do not use HTMLB or client-side eventing, eliminating the need to download relatively large resource files.

The following portal features were developed to improve the performance of an external-facing portal but can be used in any portal implementation:

• Navigation Cache: The portal can cache navigation hierarchies and nodes. For a user with the same navigation hierarchy as a previous user, the portal can retrieve the hierarchy from the cache instead of creating it again. This saves time and improves performance.

• Short (hashed) URLs: In navigation links, navigation nodes are specified by short GUIDs instead of the entire navigation path, which can be very long.

• Resource-Sensitive Page Builder: The page builder only downloads the JavaScript that is required by the current page or iView.

Q: I have implemented an external-facing portal, but my performance is not much better than when I used the standard framework page. How come?

A: The performance gains in an external-facing portal are due to reducing the resources required by the framework page and navigation iViews inside the framework page.

However, performance is also dependent on the iViews that are run in an external-facing portal and the resources they require. If resource-intensive (“heavy”) applications are run in an external facing portal, the performance gains may not be as noticeable.

In addition, the Related Links navigation iView uses HTMLB and client-side eventing, so any page with a Related Links iView will not be "light".

Q: Can I use the features of an external-facing portal to improve performance in my internal portal?

A: The performance gains from the use of the navigation cache, short URLs and resource-sensitive page builder can be used in any portal implementation.

The light framework page is designed for use in an external-facing portal.

Q: What functionality do I lose as a result of the performance improvements?

A: The light framework page does not support the WorkProtect mode and session termination features. Therefore, applications that require these features – including Web Dynpro applications – may not operate properly in an external-facing portal.

1. How does the Business Package for Manager Self-Service fit into the mySAP Enterprise Portal product offering?

Apart from portal technology, mySAP Enterprise Portal offers a wide range of premium content packages. mySAP ERP Financials Portal Solutions fall under the category of premium content and is offered in Business Packages, e.g. in the Business Package for SAP Manager Self-Service.

2. How is the Business Package for SAP Manager Self-Service priced?

The basic Business Package for SAP Manager Self-Service remains within the mySAP Business Suite or mySAP ERP pricing framework.

3. What is the difference between the Manager’s Desktop (MDT) and the Business Package for SAP Manager Self-Service?

The main difference between Manager's Desktop (MDT) and the Business Package for SAP Manager Self-Service is that in MDT you can access information and services within one R/3-system. The Business Package for SAP Manager Self-Service, however, is an Internet-based solution that combines information and services from different systems on one interface (for example different R/3 systems, BW system, Outlook, Web Content Manager, and so on). Within a portal the information can be put together in a much more flexible way. Guidelines or specific Web Content Manager help can be displayed as well as the actual services. In MDT the manager can use the standard transactions and standard reports, whereas in the portal the services are tailored to managers' needs.

The Business Package for SAP Manager Self-Service is MDT’s successor and is seen as a new, Web-compatible solution for managers. Continued support for MDT will be ensured, but further development of this tool is not planned. The Business Package for SAP Manager Self-Service can be seen as an evolution and therefore as the next generation of manager self-services.

4. Does the Business Package for SAP Manager Self-Service cover all MDT functions?

All the fundamental functions of MDT are available in the Business Package for SAP Manager Self-Service. The Business Package for Manager Self-Service offers new services for the individual subject areas, such as Employee Data, Appraisals, Compensation Adjustments, and Cost Center and Budget Information.

5. How can I get the Business Package for SAP Manager Self-Service?

The Business Packages for SAP Manager Self-Service are available for download via the SAP Developer Network. It is offered as a set of default worksets with a collection of ready-to-use iViews.

6. Where can I find more information about the portal features provided by mySAP ERP Financials and mySAP ERP Human Capital Management (HCM)?

External Access: Service Marketplace and Internal Access: MSS Sales Kit and SAP Corporate Portal.

7. Where can I find more information about the product offering of mySAP Enterprise Portal?

For further mySAP Enterprise Portal product offerings, visit the SAP Enterprise Portal homepage and take a look at the Portal Content under Product Information.

8. Where can I find more information about SAP Enterprise Portal technology, system requirements, and installation?

For further information about SAP Enterprise Portal technology, visit the SAP Enterprise Portal homepage and take a look at the Product Information section.

1.Where can I get a good overview on the system landscape requirements for BEx Web in NetWeaver 7.0 (2004s)?

For more information, see the presentation SAP NetWeaver 7.0 (2004s) BEx Web System Landscapes (SMP Login required).

2 .Do the usage types required to run a BI system (BI, BI Java, EP, AS ABAP, AS Java) need to be kept in sync?

Yes, please see SAP Note 873996 (SMP login required).

3. What happens technically if I launch a BI object (e.g. report, query or web application) via the Java / EP runtime?

Technically a Launcher-iView (com.sap.ip.bi.bex) is being parametrized. For example if the object is a formatted report it is the parameter REPORT=xyz. That means technically a parametrized iView is executed (The portal navigation is per default not visible, only the iView directly in a browser window). You can save such an object directly in a portal role. Just create a BI iView, in our example the parameter REPORT=xyz has to be specified.

The objects are also available via BI favorites or via the BI PFCG roles. Here the URL is being generated with placeholders similar to the ABAP runtime approach. Queries & Enterprise Reports are opened within a default template. The templates (for example the report default template 0REPORT_DEFAULT_TEMPLATE can be copied and modified according to your needs. In general however we recommend to stick with the default templates. The default templates are designed for enhanced viewing experience, they are not particularly designed to be easily changeable. We do not recommend or provide documentation on how to do manual changes.

4.Does the SAP NetWeaver BI 7.0 (2004s) scenario “Enterprise Reporting, Query & Analysis” require the usage types BI Java and Enterprise Portal (EP)?

Yes. The scenario requires the usage types BI Java and Enterprise Portal. For an overview of all usage types required for the scenario, see the Master Guide.

BI Java is mandatory for all customers who wish to use new frontend features of SAP NetWeaver BI 7.0 (2004s) like the new BEx Web runtime & the new tools of the Bex Suite.

The other two BI IT Scenarios also require BI Java and EP. "BI Integrated Planning" always requires it, as does the "Enterprise Data Warehouse" scenario. The AS Java usage type is required to use of the Administration Cockpit or the use of Universal Data Connect (UDC) [part of Universal Data Integration (UDI)], BI Java SDK [also part of UDI], or Web Services testing functions. AS Java can be installed by itself or using the BI Java usage type.

5. Can one NetWeaver 7.0 (2004s) BI Portal handle multiple NetWeaver 7.0 (2004s) BI systems?

Each NetWeaver 7.0 BI system needs its own BI Java usage type which again needs its own EP usage type. That means you can bring different BI systems together in one overall 04s or 6.0 EP but technically each NetWeaver 7.0 BI instance also has its own EP installed underneath for technical reasons. For endusers of course you bring it all together in one EP on top.

6. In SAP NetWeaver BI 7.0 (2004s), which BEx Web functions require SAP NetWeaver 7.0 Portal?

As soon as you use any of the new BI capabilities for SAP NetWeaver 7.0 (2004s) BEx tools (such as BEx Analyzer & Broadcasting), you require usage types BI Java and Portal. The only exception is if you do not use SAP NetWeaver 7.0 BEx tools and ONLY use the old 3.x BEx tools.

Do you need one server or two servers for SAP NetWeaver Portal and BI?

This depends on the expected load on SAP NetWeaver Portal and on the existing system landscape: One server, if the BI system only uses types AS-ABAP and AS-Java on one server. Two servers, if the BI system and SAP NetWeaver Portal (used as Enterprise Portal) use usage types AS-ABAP and AS-Java on two separate servers.

7.Should I use the installed SAP NetWeaver 7.0 (2004s) BI runtime portal as an enterprise-wide portal? Or should I have a federated portal on top?

You can use the BI capabilities for SAP NetWeaver 7.0 (2004s) Portal that comes with the usage type EP as your standard BI Portal for your BI user group. However, if you plan to run an Enterprise Portal for several user groups (BI, non-BI, mixed groups), you should consider a federated portal approach.

The federated portal approach allows you to combine several SAP NetWeaver 7.0 Portals. The central Enterprise Portal is also called the consumer portal, and it could be the single point of entry for end users.

All other portals are called producer portals. The producer portals are linked to the consumer portal. The consumer portal could integrate complete portal roles of the producer portal.

Mixed portal roles with the content of several producer portals are possible using the remote Delta Links.

Information broadcasting is possible within one producer portal. Broadcasting between different producer portals is not possible.

In general, all functions, which are possible in a standalone portal, are possible in a producer portal. These functions are not possible between different producer portals (such as information broadcasting).

8.Is it possible to use an SAP EP 6.0 Portal with a federated portal?

No. Only SAP NetWeaver 7.0 BI Portals support the federated portal approach. An SAP EP 6.0 Portal could not be a consumer or producer portal in a federated portal system landscape.

9. If you do not use any new BEx Web functions, do you have to install the usage types BI Java and EP?

SAP EP 6.0 Portals could be integrated into a federated portal system landscape using URL iViews.

10.Which BI capabilities for SAP NetWeaver 7.0 (2004s) have to be included in an enterprise-wide federated SAP NetWeaver 7.0 (2004s) Portal?

1.For each SAP NetWeaver 7.0 (2004s) system, you can integrate the portal roles of the local BI or portal runtime into a federated portal.

2.Currently, we are checking to see if it is possible to integrate BI data generated using the local BI or portal runtime of a SAP NetWeaver 7.0 (2004s) BI system as a simple iView into a federated portal. Once we can support this function, we will update this FAQ and announce it in the support package release notes.

3.Information broadcasting can only be done 1:1 into the local EP runtime of a SAP NetWeaver 7.0 BI system. If you want to integrate broadcasting into the federated portal, it needs to be done using role integration.

4.KM online links to BI data can only be included 1:1 into KM folders of the local EP runtime of SAP NetWeaver 7.0 BI system. If you want to integrate KM online links to BI data into the federated portal, it needs to be done using role integration.

5.You can integrate SAP NetWeaver 7.0 BI BEx Web Analyzer directly into a federated portal as long as you have a role containing it.

11.Which BI capabilities for SAP NetWeaver 7.0 (2004s) have to be included in an SAP enterprise-wide 6.0 Portal?

1.As of SAP NetWeaver 7.0 (2004s) BI SP7 in combination with EP 6.0 SP15, it is possible to integrate BI data generated using the local BI or portal runtime of a SAP NetWeaver 7.0 BI system using URL iViews into a 6.0 Portal.

2.You cannot broadcast from a SAP NetWeaver 7.0 BI system into a 6.0 Portal.

3.You cannot integrate KM online links on SAP NetWeaver 7.0 BI data into a 6.0 Portal.

4.You can integrate the SAP NetWeaver BI 7.0 BEx Web Analyzer into a 6.0 Portal as BEx Web Application iView.

12.Can I use one BEx Web Analyzer iView within the federated portal to access multiple BI systems?

You can access multiple SAP NetWeaver 7.0 (2004s) BI systems as well as other third-party BI systems that offer an XML/A or ODBO interface using one BEx Web Analyzer within the federated portal. You would have to connect all the systems you need as portal systems to a portal runtime of one of your SAP NetWeaver 7.0 BI systems. You can then use role integration to include BEx Web Analyzer in the federated portal.

As of SAP NetWeaver 7.0 BI SP7 in combination with EP6.0 SP15, it is possible to integrate BI data generated using the local BI or portal runtime of a SAP NetWeaver 7.0 BI system using URL iViews into a 6.0 Portal. You are able to integrate the SAP NetWeaver 7.0 BI BEx Web Analyzer into a 6.0 Portal as URL iView.

13.Can I integrate BI queries, Web applications and so on into third-party portals?

Yes. All BI objects can be displayed as iViews. iViews can be integrated into other portals. Check the EP documentation. You can also integrate into third-party portals by Broadcasting into file servers. Check the Broadcasting documentation and the Broadcasting FAQs.

14 Can I use one Broadcaster iView to create settings for multiple BI systems?

No. There is a 1:1 relationship between broadcaster iViews an a BI system.

Can I include KM Online links to various BI systems into one KM Folder?

No. There is a 1:1 relationship between a KM folder and a BI system.

15.How can I publish BI capabilities for SAP NetWeaver 7.0 (2004s) BEx queries, workbooks and Web applications as iViews in the Portal Content Directory?

This can be done using the BEx Broadcaster in SAP NetWeaver 7.0 (2004s).

16.In the Enterprise Portal 6.0: What happens if the underlying Web template of a BI iView is migrated from 3.5 to the SAP NetWeaver 2004s runtime?

As of SAP NetWeaver 7.0 (2004s) BI SP7 in combination with EP6.0 SP15, it is possible to integrate BI data generated using the local BI or portal runtime of a SAP NetWeaver 7.0 BI system using BEx Web Application iViews into a 6.0 Portal. Within EP 6.0, two properties of the iView need to be changed:

&#61607;Version property (BW Version) - new in SAP NetWeaver 7.0 BI but automatically added to old iViews.

&#61607;BEx Web application query string (report) - replace “template_id” with “template” and adjust technical template name if new template does not have the same name.

17.If you have an existing SAP EP 6.0, do you have to upgrade it to use new BEx Web functions?

No. However, you have to install an SAP NetWeaver 7.0 Portal along with your BI system. New BI Content can be shown in an SAP EP 6.0 Portal (as of SP15) using SAP NetWeaver 7.0 Portal (as of SP7).

18.Do you have to upgrade or install the BI system and SAP NetWeaver Portal simultaneously?

No. You can upgrade or install them independently. However, you need SAP NetWeaver 7.0 Portal to use any new BEx Web functions.

19.If you are using a non-SAP portal, do you have to install an SAP NetWeaver Portal?

Yes. If you use any new BEx Web functions, you have to install SAP NetWeaver 7.0 Portal along with your BI system. However, you can display BI content in a non-SAP portal.

20.You include a BEx Web template as an iView in SAP EP 6.0. You upgrade the underlying SAP BW 3.x system to SAP NetWeaver 2004s and generate the Web template on the new SAP NetWeaver 7.0 (2004s) Java or Portal runtime but still want to see the template as the same iView in the SAP EP 6.0. What happens to the iView in SAP EP 6.0?

As of SAP NetWeaver 7.0 (2004s) BI SP7 in combination with EP6.0 SP15, it is possible to integrate BI data generated using the local BI or portal runtime of a SAP NetWeaver 7.0 BI system using URL iViews into a 6.0 Portal. Within EP 6.0, two properties of the iView need to be changed:

1.Version property (BWVersion): new in BI 7.0 (2004s) but automatically added to old iViews.

2.BEx Web Application Query String (Report): replace “template_id” to “template” and adjust technical template name if new template does not have the same name.

21.What are the best resources for BI capabilities for SAP NetWeaver 7.0 Portal integration?

We recommend the following resources:

SAP Note 917950 is a frequently updated resource for questions regarding Setting Up BEx Web in SAP NetWeaver 7.0 (2004s) BI.

Documentation - You can find a detailed description of all required steps in the BI system in transaction SPRO, SAP Reference IMG ->SAP Customizing Implementation Guide ->SAP NetWeaver ->Business Intelligence ->Reporting-relevant Settings ->Web-Based Settings ->Integration into the Portal.

Frequently Asked Questions (FAQ) -You can access a list of frequently asked question sets for BI on the SAP Developer Network here (SDN Home -> Developer Areas -> SAP NetWeaver -> Business Intelligence, and then the links SAP BI FAQs https://www.sdn.sap.com). This list is frequently updated.

SDN Forum The SDN forum on Business Intelligence in SAP NetWeaver 7.0 (2004s) is at http://sdn.sap.com, Forums ->SAP Business Intelligence ->BI in SAP NetWeaver 7.0 (2004s). You use this forum to ask question and discuss with experts.

22.Can I integrate BI capabilities for SAP NetWeaver 7.0 in SAP 5.0 EP?

No. This is not supported.

Does SAP NetWeaver 7.0 Portal still support Drag&Relate?

No. For more information, see the following release notes in http://help.sap.com.

Following are the few weblogs which contains good number of questions alongwith regarding EP:

/people/piyush.kumar7/blog/2006/05/15/portal-demystified--part-3

/people/piyush.kumar7/blog/2006/05/11/portal-demystified--part-2

/people/piyush.kumar7/blog/2006/05/08/portal-demystified--part-1

/people/sap.user72/blog/2004/10/25/sap-logon-ticket-based-single-sign-on

/people/sap.user72/blog/2004/11/30/user-mapping-based-single-sign-on

Hope that help,reward points if useful

Regards

Anil

Former Member
0 Kudos

Hi Vikas

Check this /thread/402658 [original link is broken]

Warm Regards

Chaitanya.A