Skip to main content

Posts

Showing posts from 2009

How to .. Integration Non-SAP J2EE-based Web Applications into SAP Portal with SSO Part 2

After we have configured our portal object, we must install the gateway application and modified the target application. 1. Deployment of the Gateway Web J2EE Application : We must to create an j2ee web application with the purpose to be a gateway from every application that want to validate the SAP Ticket Logon. I have created this application because of the problem with the sapssoext library provied from SAP, it can't be loaded from more than one classloader, then this new web application will be the unque application on the server that can load this library. This application could expose 2 or more services, it depends of you. I will mention 2 services: /SsoGatewayWeb/ssojson.dtx : under this URI will happen the vaidation of the SAP Ticket Logon sent by the SAP Portal, it returns a JSON string with the information retrieved from the ticket. /SsoGatewayWeb/sendsso2cookietest : this URI generates HTML content, it generates the string ACL of the certificate file. Both only acc

How to .. Integration Non-SAP J2EE-based Web Applications into SAP Portal with SSO Part 1

We are going to integrate Non-SAP J2EE-based Web Applications into the SAP Portal with Application Integrator and SSO. In this part, I will discuss the overall of these posts and configure the iView with Application Integrator Overview of Integration. To perform this integration must take into account the following steps: Deployment of the portal application for the creation of the system portal object Create and set the type of Application Integrator iView that will contain the applications to integrate. Installing SAPSSOEXT and SAPSECU libraries Deployment of the application gateway called SsoGatewayWeb Changing the target application. This integration has the following restrictions: It applies only for web applications based on J2EE Servlet. Depend exclusively on the sucessful load of the libraries supported by SAP (sapssoext and sapsecu) in both Windows and UNIX environments. The target application must have created a profile for the user id logged to the SAP portal, this sh

Show the user data of every response for the current Quick Poll in the campaign in a Flex Client, 3rd part

In this part, only we will focus in Flex client, also there are others parts, such as J2EE components, but here we don't consider here because they are out of scope of this blog. It includes to consider the following parts: Create J2EE Web Proyect, it will contain the flex client created with Flex Builder or Flash Develop IDE . Create EJB Project , it references to the java project created in the 2nd part of this blog. Here, you'll need to create a stateless session bean, and after to expose some method as Web Service. The NWDS has a wizard to do this taskes. Also, you could create a Web Services directly of the Java project by making use of the NWDS wizards. Create Flex Builder Project or FlashDevelop IDE, you create a flex client to consume the previuosly web services. Create Enterprise Project; finally we will add the web and ejb project modules, previously created, to this kind project for deployment our ear file on SAP Netweaver AS 7.0+. Now, you will review the MXM

Show the user data of every response for the current Quick Poll in the campaign in a Flex Client, 2nd part

Only we'll review the main part of the method "getVotesPerCampaingResponse(Map map)" in the SearchService class. Before to begin we need to consider the following items: com.sapportals.wcm.control.quickpoll.extension.QPResourceManager. com.sapportals.wcm.repository.IResourceContext. com.sap.security.api.IUser. In this operation we must take into account that the quick polls will be processed in according to the quick poll state: current and historical. Therefore, first we need to process the current quick poll and after to process the historical rapid quick polls of the requested campaign. The main class is " QPResourceManager ", internally it works with the com.sapportals.wcm.control.quickpoll.extension.QPBaseService class. For to get one instance of the QPResourceManager class, previously we need to get an instance of the com.sapportals.portal.security.usermanagement.IUser class, it'll reference to the portal service user " cmadmin_service "

Show the user data of every response for the current Quick Poll in the campaign in a Flex Client, 1st part

In this first part, we will learn the basic about the SAP portal KM library km.appl.ui.quickpoll_api.jar and its configuration for our development environment. The application that we are going to create will have: input: the name of campaign to review. output: every user vote of the current quick poll with detail information of the user. As the figure 2. Before to begin we must take in account that the following things: The repository path for the quick poll is "/document/QuickPoll". The name of the Quick Poll resource is qp.xml. It is for the current quick poll of the campaign. For the previous and closed quick poll they are located in the history directory of the campaign. The namespace of the quick poll service is " http://sapportals.com/xmlns/cm:service.quickpoll.QPService ". The name of the portal service for quick poll is "AppPropertiesRepositoryService". The name of the property is "quickpollvote" ( link ). This is the most important

How to use Global Transactions and Data Sources with Spring Framework 2.0.8 in J2EE Applications, Part 2

In the previous part ( 1st ) , we saw how to configure SAP JTA Transaction into the Spring Context, now we are going to review the SAP J2EE Datasources. We need to review two parts: 1. Configuration of the JEE datasources in the data-sources.xml file (in according to the SAP AS Platform). In the next picture, you can see the last file that I used in my project In this image you can see the definition of the Driver JDBC (2nd box), it needs to be set-up in the Visual Administrator. After, you see the sql-engine tag, it allows us to define the SQL type support ( help ). The valid values are ( link ): Open_SQL: the system returns a DBI CommonConnection Native_SQL: the system returns a DBI DirectConnection Vendor_SQL: the system returns a standard connection from JDBC driver (not using DBI at all) In this case, I have used the value of Vendor_SQL because I have used iBatis in my persistence layer and not the persistence engines of SAP NW AS (jdo or entity beans). Finally, you need to

How to use Global Transactions and Data Sources with Spring Framework 2.0.8 in J2EE Applications, Part 2

In the previous part ( 1st ), we saw how to configure SAP JTA Transaction into the Spring Context, now we are going to review the SAP J2EE Datasources. We need to review two parts: 1. Configuration of the JEE datasources in the data-sources.xml file (in according to the SAP AS Platform). In the next picture, you can see the last file that I used in my project In this image you can see the definition of the Driver JDBC (2nd box), it needs to be set-up in the Visual Administrator. After, you see the sql-engine tag, it allows us to define the SQL type support ( help ). The valid values are ( link ): Open_SQL: the system returns a DBI CommonConnection Native_SQL: the system returns a DBI DirectConnection Vendor_SQL: the system returns a standard connection from JDBC driver (not using DBI at all) In this case, I have used the value of Vendor_SQL because I have used iBatis in my persistence layer and not the persistence engines of SAP NW AS (jdo or entity beans). Finally, you need to de

How to use Global Transactions and Data Sources with Spring Framework 2.0.8 in SAP Netweaver Aplication Server 7.0, Part 1

For this part, we will create, build and deploy a J2EE Application on SAP AS 7.0 with J2SE 1.4, and the version of Spring Framework is 2.0.8 because it is the last one that can be supported by J2SE 1.4. For the Spring XML configuration we will use the XML configuration syntax based on XML Schema, also we could use syntax based on XML DTD for backward compatibility. Because of we are using J2SE 1.4, we will need a parser that supports XML Schema like Xerces. We need to remind that when you create an application with transaction support, we could use 2 type of transaction: Local Transaction are resource-specific (by example when only we work with one resource that needs transaction support like jdbc connection). Global Transaction are managed by the application server using JTA, it provide the ability to work with multiple transactional resources (by example when we work atleast two resources that need transaction support like jdbc connection, and jca connection). Now, we must fo