Need info on Accessing portal services within a Web Dynpro application
Hi,
I need information on Accessing portal services within a Web Dynpro application.I want to explore this topic.Can anyone give useful links?
Thanks in advance.
Rajani N
Hi
how to reference a portal service with web dyn pro ?
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/ep/how%20to/how%20to%20access%20a%20portal%20service%20within%20a%20web%20dynpro%20java%20application.pdf
http://help.sap.com/javadocs/NW04S/current/wd/com/sap/tc/webdynpro/clientserver/portal/WDPortalUtils.html
Best Regards
Jakub Krecicki
Similar Messages
-
How to make use of Portal service in the web dynpro application
hi
I have some portal service and how to use that in the web dynpro application.
and also what is the main diff between Portal Component and web dynpro application.
do we required portal to run web dynpro application.
thanks
mmukeshHi,
>> I have some portal service and how to use that in the web dynpro application.
Yes. U can use Portal service in webdynpro. Check the link given by subathra.
>> and also what is the main diff between Portal Component and web dynpro application
Portal Components are components designed to run in portal server while webdynpro application can run in J2EE WebAS.
>> do we required portal to run web dynpro application.
No for general cases. Just WebAS is sufficient to run webdynpro appl. But if u use portal service in ur webdynpro appl, then make sure both (portal service and webdynpro appl) run on same J2EE engine. That is mandatory.
Regards,
Vijai -
How to get Portal User Context in Web Dynpro application
I have successfully integrate a web dynpro app into SAP Netweaver Portal.
Within my web dynpro app, how can I get portal user context information such as first name, last name, job title or some newly created ume attibutes.
Is there any programmatical approach to get portal user context in my web dynpro. I not sure whether I can use the following codes in web dynpro?
IUserContext userContext = request.getUser();
String firstName = userContext.getFirstName();
String lastName = userContext.getLastName();
If yes, can someone point me the name of the jar file I have to import.
Note : The SAP Netweaver installation that runs my web dynpro app is same with the SAP Portal.Hi ,
you can use the below code to get User details and add com.sap.security_2.0.0 > lib > com.sap.security.api.jar
try
IWDClientUser clientUser = WDClientUser.getCurrentUser();
String firstName = clientUser.getFirstName();
String lastname = clientUser.getLastName();
catch (WDUMException e) {
wdComponentAPI.getMessageManager().reportException("Error Retrieving User"+e.toString(),true);
Regards,
Sunitha Hari -
Access Portal Services within Web Dynpro
Hi,
I created a portal service and would like that some values of the same have to be set by a Web Dynpro application, but i have a problem to access this
service. Always that a i try to get a reference of this service the object isn't instantiated and i get a null instantiated.
What i`m trying to do is the broadcast message described in [/people/prakash.singh4/blog/2005/04/28/brodcast-messages-to-logged-on-users-in-portalpart1 |/people/prakash.singh4/blog/2005/04/28/brodcast-messages-to-logged-on-users-in-portalpart1]with a variation that need of some
more Attributes and that the same will be pass by the Web Dynpro, like the broadcast message i`ll just use the alert concept and don't the publication.
Follow below the describe of executed actions.
1 - I did all the process as the [Weblog|/people/prakash.singh4/blog/2005/04/28/brodcast-messages-to-logged-on-users-in-portalpart1].
2 - I generated the Jar and insert the same in a DC.
3 - I generated the Web Dynpro application, in the used DCs and added the DC with the Jar, and i inserted the reference in a Sharing References.
4 - Did the deploy and insert the Web Dynpro in a Portal Iview.
But always that i execute, i can't capture the reference of the service.
Note: The reference in Sharing References was executed for several diferents forms of test, like for exemple:
PORTAL:<vendor>/com.teste.broadcast
PORTAL:com.teste.broadcast
PORTAL:<vendor>/com.teste.broadcast.alertreceiver
PORTAL:com.teste.broadcast.alertreceiver
But always adding one at a time.
Until put the saller like sap.com i already try.
The creation of the service as described in the weblog can be accessed for a Web Dynpro? What the problem to access the Service??
The codes follow Bellow.
portalapp.xml
<?xml version="1.0" encoding="UTF-8"?>
<application>
<application-config>
<property name="PrivateSharingReference" value="com.sap.portal.htmlb,com.sap.portal.runtime.system.notification"/>
<property name="ServicesReference" value="com.teste.broadcast"/>
</application-config>
<services>
<service name="alertreceiver">
<service-config>
<property name="className" value="com.teste.broadcast.alertreceiver"/>
</service-config>
</service>
</services>
</application>
BroadcastAppView.java
import com.sap.security.api.IUser;
import com.sap.tc.webdynpro.clientserver.portal.WDPortalUtils;
import com.sap.tc.webdynpro.clientserver.portal.sf.WDPortalServiceType;
import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
import com.sap.tc.webdynpro.services.sal.um.api.IWDClientUser;
import com.sap.tc.webdynpro.services.sal.um.api.WDClientUser;
import com.sapportals.portal.prt.service.notification.INotificationService;
import com.sapportals.portal.prt.service.notification.NotificationStringBufferPool;
import com.sapportals.portal.prt.service.notification.StreamData;
import com.sapportals.portal.prt.service.notification.TopicData;
import com.sapportals.portal.prt.service.notification.TopicDataContainer;
import com.teste.broadcast.Ialertreceiver;
public void onActionSendMessage(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionSendMessage(ServerEvent)
IWDMessageManager msgManager = wdComponentAPI.getMessageManager();
INotificationService notService = null;
try {
notService = (INotificationService)
WDPortalUtils.getServiceReference("com.teste.broadcast");
//notService = (INotificationService)
// WDPortalUtils.getServiceReference("com.teste.broadcast.alertreceiver");
//notService = (INotificationService)
// WDPortalUtils.getServiceReference(IAlertreceiver.KEY);
} catch (Exception ex) {
msgManager.reportWarning("2-" + ex.getMessage());
TopicDataContainer container = new TopicDataContainer(TOPIC_NAME);
StreamData messageStream = new StreamData(new ByteArrayInputStream(textMessage.getBytes()));
TopicData durationdata =
new TopicData(TopicDataContainer.STRING, "60");
TopicData userdata =
new TopicData(TopicDataContainer.STRING, user.getUniqueName());
container.addTopicData("message", messageStream);
container.addTopicData("duration", durationdata);
container.addTopicData("user", userdata);
container.addTopicData("group", "GROUP_ACCESS");
//notService.publish(TOPIC_NAME, container);
msgManager.reportWarning("-" + notService);
//@@end
* The following code section can be used for any Java code that is
* not to be visible to other controllers/views or that contains constructs
* currently not supported directly by Web Dynpro (such as inner classes or
* member variables etc.). </p>
* Note: The content of this section is in no way managed/controlled
* by the Web Dynpro Designtime or the Web Dynpro Runtime.
//@@begin others
private final static String SERVICE_NOTIFICATION = "com.sap.portal.runtime.system.notification.notification";
private final static String TOPIC_NAME = "USTBroadCastAlerts";
//@@end
Thank.
Luciano Feletti AponteHi Luciano,
Take a look at for your answer:
/thread/833576
Regards,
Rogério -
Access portal system details in Web Dynpro ???
Hello All,
I have a requirement such that in my Web Dynpro application, I need to figure out that the backend R/3 it is trying to connect to, is it a unicode or a non unicode system.
For this purpose, we maintain an additional alias name for the portal system starting with UNI_ if its a unicode box or NONUNI_ if its a non-unicode box.
Is there any other better way of storing this information.
<b>I need to know, how can we fetch all the alias names maintained for a sytem in portal using Web Dynpro APIs.</b>
Please help.
Thanks in advance,
SamtaHi,
please take a look at the <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/developerareas/webdynpro?rid=/library/uuid/49f2ea90-0201-0010-ce8e-de18b94aee2d">tutorial section</a> here at SDN. This is a good starting point to learn WebDynpro.
Regards
Sebastian -
Howto replace an embedded FPM-Instance within a Web DynPro Application?
Hi,
I have to build a Web DynPro application that displays an Navigation menu on the left side. On the right side within a UIViewContainer an embedded FPM Instance should be displayed depending on which entry I pressed on the Navigation menu. (Similiar to the Cockpit)
For Test purposes I have 2 buttons in the navigation menu. One to add the fpm and one to remove the fpm.
When I start the WD Application I first hit the addfpm button. And a new FPM Application is displayed within the UIViewElementContainer. When I hit the delfpm button the FPM will disappear. When I will the addfpm button again I get
a dump[1]
I have absolutely no idea why I get this dump.
Do I have to reset the FPM application remove removing it? Or is it possible to load a new FPM configuration in the FPM without removing it first?
Here are the Methods that I use to remove/add the FPM-Instance:
method ONACTIONADDFPM .
DATA: L_VIEW_CONTROLLER_API TYPE REF TO IF_WD_VIEW_CONTROLLER.
DATA: L_COMPONENT_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE.
DATA: lf_conf_key TYPE WDY_CONFIG_KEY.
L_VIEW_CONTROLLER_API = wd_this->WD_GET_API( ).
"Wenn die Komponente-Usage noch nicht vorhanden ist dann erstelle Sie:
L_COMPONENT_USAGE = wd_this->WD_CPUSE_FPM( ).
IF L_COMPONENT_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
lf_conf_key-CONFIG_ID = '/PLMU/WDC_MAT_OIF_CFG'.
L_COMPONENT_USAGE->CREATE_COMPONENT( EXPORTING COMPONENT_NAME = 'FPM_OIF_COMPONENT'
CONFIGURATION_ID = lf_conf_key ).
"Komponente mit der View verknüpfen:
L_VIEW_CONTROLLER_API->PREPARE_DYNAMIC_NAVIGATION(
SOURCE_WINDOW_NAME = 'WINDOW'
SOURCE_VUSAGE_NAME = 'MAIN_USAGE_0' "MAIN_USAGE1/UIVIEW_VCA_1'
SOURCE_PLUG_NAME = 'TO_FPM'
TARGET_COMPONENT_NAME = 'FPM_OIF_COMPONENT'
TARGET_COMPONENT_USAGE = 'FPM'
TARGET_VIEW_NAME = 'FPM_WINDOW'
TARGET_PLUG_NAME = 'DEFAULT'
TARGET_EMBEDDING_POSITION = 'MAIN/FPMVIEW' "'MAIN_USAGE_0/UIVIEW_VCA_1'
WD_THIS->FIRE_TO_FPM_PLG( ).
ENDIF.
endmethod.
And then remove the FPM using this button action:
method ONACTIONDELFPM .
DATA: L_VIEW_CONTROLLER_API TYPE REF TO IF_WD_VIEW_CONTROLLER.
DATA: L_COMPONENT_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE.
L_VIEW_CONTROLLER_API = wd_this->WD_GET_API( ).
"Wenn die Komponente-Usage vorhanden ist dann lösche sie:
L_COMPONENT_USAGE = wd_this->WD_CPUSE_FPM( ).
DATA: lo_event TYPE REF TO cl_fpm_event.
lo_event = cl_fpm_event=>create_by_id( iv_event_id = cl_fpm_event=>GC_EVENT_CLOSE ).
DATA: iwci_fpm TYPE REF TO IWCI_FPM_OIF_COMPONENT.
iwci_fpm = wd_this->WD_CPIFC_FPM( ).
CALL METHOD IWCI_FPM->CLOSE_DIALOG
EXPORTING
IO_EVENT = lo_event
IV_EVENT_FAILED = ABAP_FALSE
IF L_COMPONENT_USAGE->HAS_ACTIVE_COMPONENT( ) IS NOT INITIAL.
L_COMPONENT_USAGE->DELETE_COMPONENT( ).
"FPM Ref holen und Exit-Event schicken:
DATA: lo_fpm TYPE REF TO IF_FPM.
lo_fpm = cl_fpm_factory=>get_instance( ).
CHECK NOT lo_fpm IS INITIAL.
DATA: lf_event TYPE FPM_EVENT_ID.
lf_event = cl_fpm_event=>GC_EVENT_CLOSE.
lo_fpm->RAISE_EVENT_BY_ID( lf_event ).
ENDIF.
endmethod.
The dump says:
Access via 'NULL' object reference not possible.
The ABAP call hierarchy was:
Method: /PLMU/IWCI_WDI_FRW_OIF~OVERRIDE_EVENT of program /1BCWDY/0O2TST5VUWTCOBML1BE7==CP
Method: /PLMU/IF_FRW_CALLBACK_PROXY~OVERRIDE_EVENT of program /PLMU/CL_FRW_F_CALLBACK_PROXY=CP
Method: OVERRIDE_EVENT of program /PLMU/CL_FRW_CALLBACK_PROXY===CP
Method: OVERRIDE_EVENT_OIF of program /PLMU/CL_FRW_APPL_CNTRL_ASSISTCP
Method: OVERRIDE_EVENT_OIF of program /1BCWDY/0O2TST5VUWTCNOS8226Y==CP
Method: IWCI_IF_FPM_OIF_CONF_EXIT~OVERRIDE_EVENT_OIF of program /1BCWDY/0O2TST5VUWTCNOS8226Y==CP
Method: GET_UIBBS_FOR_EVENT of program /1BCWDY/0O2TST5VUWTCNAR83UZE==CP
Method: IWCI_IF_FPM_FLOORPLAN_COMP~GET_UIBBS_FOR_EVENT of program /1BCWDY/0O2TST5VUWTCNAR83UZE==CP
Method: IF_FPM_FLOORPLAN~GET_UIBBS_FOR_EVENT of program CL_FPM_OIF_INTERNAL===========CP
Method: GET_NEXT_UIBBS of program CL_FPM========================CP
Thanks
SebastianChris yes you are right, there is some special logic in the nav app,
that I can't do with NWBC.
If I would use a Portal to display the FPM within an Iframe.
What happends when I replace the FPM in the Iframe with a new
FPM/URl. Will the old FPM in the Iframe just disappear or will
the FPM shutdown and release all the acquired locks?
I already did a simliar thing where I just used URLs
to display an FPM application within an IView/IFrame.
But when I replace the URL of the IView/IFrame with a new URL/FPM,
the old FPM only just disappered but no locks where released.
So displaying the same FPM again, gives me a message that the Object is already
locked.
Thanks
Sebastian -
How can I create a web Service from my Web Dynpro Application ?
Hi,
Kindly let me know How I could create a "Web Service" with my Web Dynpro DC project.
Awaiting your responses.
Regards,
MaheshHi Mahesh,
You can use the web services by creating the Model in web Dynpro
And if you want to publish your own web service then you have to create a EJB module and publish as a web service.
Thanks
Ninad -
Accessing portal dictionary tables from Web Dynpro project
Hi
Am a new to whole portal and webdynpro thing, and I hope that you can help here
I created a new dictionary project through NWDS and created a table with columns and I successfully deployed it
I also created a web dynpro project and I added a TABEL UI to the layout
how can I connect or access the table I created in the dictionary project from the Web dynpro project so I can query all data to fill the TABEL UI in the web dynpro ?
is there a driver that I can use like JDBC where I can just write regular SQL queries ?
regardsHi swathi
See the persistence API--Adv and Disadvantages what ever you mentioned come under the persistence API
Relational Persistence
=================
SQL-based coding: expressive!
SQLJ: for static SQL, checked at design time,
recommended
JDBC: for dynamic SQL, can be combined with SQLJ
=======================
Object-relational Persistence
======================
SQL-free! Portable!
JDO: light-weight object persistence, Java-like dynamic
query language
EJB CMP: part of J2EE standard, relatively heavy-weight,SQL-like static query language
Regards,
Venkata Kalyan Karanam -
How can I call a Web Service in a Web Dynpro Application??
Hi All,
does anybody hav links, tutorials or what not??
Thanks, JJJHi Jesse,
You can do GET, PUT and POST using FormCalc, so you should be able to access a REST web service.
There is a example of accessing a RSS feed in this thread, http://forums.adobe.com/message/5695433#5695433
Regards
Bruce -
Consuming 3rd party web service in Java web dynpro application
Hi All,
I am working on a scenario where external(3rd party) web service has to be consumed in WD Java application. I am provided with WSDL file. Let me explain how I usually consume other webservices:
Create model->AWS model->Remote Location/file System->provide url->create/choose service group->finish
Then I would generate the code in custom controller by applying template
I assign provider system as local for the service group in nwa.
This is normal process to me. I am struck with this 3rd party web service. Please share your ideas on the same. Any help is highly appreciated.
BR,
ManojI ve created a provider system pointing to where 3rd party WS resides. i am trying to connect through WSIL. While pinging that provider system, I don't see that particular WS(that I am gonna consume). And while assigning this Provider system to service group, processing state getting 'Failed'.
What could be reason? -
Accessing Portal Service from web dynpro : NoClassDefFoundError
Hello Experts,
I tried to develop a portal service (EquiService) and a web dynpro application (wdequset) which accesses the portal service. I put my web dynpro in an IView to show it in the portal. The service is running but when I try to open the IView I always get an error. I debugged my web dynpro application and found out that I didnt get a reference to the service (portalEquiService is always null). See the following code and have a look to my comments.
public void wdDoInit()
//@@begin wdDoInit()
String key = IEquiService.KEY;
* Here I get the right key. Thats OK so far.
// IEquiService portalEquiService = (IEquiService)PortalRuntime.getRuntimeResources().getService(key);
* When I use this line to get an instance of the service, I get the following error:
* java.lang.NoClassDefFoundError: com/sapportals/portal/prt/runtime/PortalRuntime
* The package "com.sapportals.portal.prt.runtime.*" is imported
IEquiService portalEquiService = (IEquiService) WDPortalUtils.getServiceReference(key);
* I found this in the "How to Access a Portal Service Within a WebDynpro Java Application" document.
* When I use this line, I get the following error:
* java.lang.NoClassDefFoundError: com/company/service/equi/IEquiService
* The package "com.company.service.equi.IEquiService" is also imported.
wdContext.currentContextElement().setEquinummer(portalEquiService.getEquiData().getEquiNr());
//@@end
When I have a look to the service in the portal I see that the service is running and the following additional lines under Dependents:
service: psequinr|EquiService
SAPJ2EE::company.com/wdequset
So the service seems to know my web dynpro application (after debugging for the first time).
Detailed error information 1 (when I try to get the reference by PortalRuntime.getRuntimeResources().getService(key) ):
java.lang.NoClassDefFoundError: com/sapportals/portal/prt/runtime/PortalRuntime
at com.company.service.ServiceCust.wdDoInit(ServiceCust.java:107)
at com.company.service.wdp.InternalServiceCust.wdDoInit(InternalServiceCust.java:112)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingCustomController.doInit(DelegatingCustomController.java:73)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.progmodel.controller.Component.getCustomControllerInternal(Component.java:436)
at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:374)
at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:403)
at com.sap.tc.webdynpro.progmodel.context.MappedAttributeInfo.initAttributeMapping(MappedAttributeInfo.java:319)
at com.sap.tc.webdynpro.progmodel.context.MappedAttributeInfo.init(MappedAttributeInfo.java:278)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initAttributes(NodeInfo.java:674)
at com.sap.tc.webdynpro.progmodel.context.DataNodeInfo.doInit(DataNodeInfo.java:238)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:659)
at com.sap.tc.webdynpro.progmodel.context.Context.init(Context.java:40)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:199)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:539)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:421)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:41)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.displayToplevelComponent(ClientComponent.java:135)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:404)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:618)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:251)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:160)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Detailed error information 2 (when I tryto get reference by WDPortalUtils.getServiceReference(key) ):
java.lang.NoClassDefFoundError: com/company/service/equi/IEquiService
at com.company.service.ServiceCust.wdDoInit(ServiceCust.java:123)
at com.company.service.wdp.InternalServiceCust.wdDoInit(InternalServiceCust.java:112)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingCustomController.doInit(DelegatingCustomController.java:73)
at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.progmodel.controller.Component.getCustomControllerInternal(Component.java:436)
at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:374)
at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:403)
at com.sap.tc.webdynpro.progmodel.context.MappedAttributeInfo.initAttributeMapping(MappedAttributeInfo.java:319)
at com.sap.tc.webdynpro.progmodel.context.MappedAttributeInfo.init(MappedAttributeInfo.java:278)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initAttributes(NodeInfo.java:674)
at com.sap.tc.webdynpro.progmodel.context.DataNodeInfo.doInit(DataNodeInfo.java:238)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:659)
at com.sap.tc.webdynpro.progmodel.context.Context.init(Context.java:40)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:199)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:539)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:421)
at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:130)
at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:41)
at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.displayToplevelComponent(ClientComponent.java:135)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:404)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:618)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:251)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:160)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
Hope that anybody knows what could be wrong here.
Thanks a lot.
ReneThe prtapi.jar is set in the classpath:
<classpathentry kind="lib" path="C:/Programme/SAP/JDT/eclipse/plugins/com.sap.tc.ap/comp/SAP_JTECHS/DCs/sap.com/epbc.prtapi._api/_comp/gen/default/public/default/lib/java/prtapi.jar"/>
and when I look in the portal (System Administration -> Support -> Portal Runtime -> Application Console), select my service and press the "show" Button, I see that the service has a dependency to my web dynpro application.
service: psequinr|EquiService
SAPJ2EE::company.com/wdequset
So I think that the sharing reference of the web Dynpro should be ok. Or not? -
Cannot access Portal Service from Web dynpro DC
Hi all,
I cannot access the portal service from my web dynpro dc.
1. I created a Portal Service (say xxxservice) in a DC (say the DC name is testservice and the vendor is xx.com)
2. Created a public part under the testservice DC and added my classes to it.
3. Built and deployed the testservice DC.
Now,
4. I created a web dynpro DC.
5. In the used DC section added the public part of the testservice DC and also the epbc.prtapi._api.jar for build time and runtime with strong qualifier.
6. In the web dynpro "Sharing Reference", I added PORTAL:xx.com/testservice
7. In the component controller, I am calling a method from the Portal Service.
8. Built the web dynpro DC and deployed it.
9. But at the run time it gives, NoClassDefFoundError on the xxxservice.
I looked at many forum threads and tried everything. For eg: changed the Sharing Reference to PORTAL:sap.com/testservice but nothing works.
Please do suggest me if I am missing something
ThanksHi Laxmi,
I am sure something wrong at Portal Service DC creation. On webdynpro part you done fine .. by putting PORTAL:sap.com/testservice
Check the below steps:
1. Create DC Portal Applicaiton Stand alone (SDA)
2. Add portal Service for the newly created portal service dc
3. build and activate
4. by default you should be get public part by name API which is compilation dependency
5. here you dont need to do anything else
6. on webdynpro just add the used dc to this API public part of portal service dc
7. add PORTAL:sap.com/testservice sharing reference
If u go by this you shouldnt get any error..
Now, u are saying something like ur own classes .. i think u are trying to put u r own classes to service.. but remeber portal service is to have only IYourService class and YourService class.. other classes should be made to be jar.. and add that jar to External library DC and create PPs compile & Assemble and add that DC to current service dc.
Hope it is clear.. if not pls let me know..
Thanks,
Raags -
Access Portal Parameter from within ABAP-Web Dynpro
Hi all,
I have an ABAP Web Dynpro which is executed via an Web Dynpro iView in Enterprise Portal.
How can I read the UserID of the portal user within the web dynpro? (the portal user will not be the user who called the Web Dynpro)
Any suggestions on this?
Thanks in advance.
Kind Regards,
Martina
~~~~~~~~~~~~~~~~
ABAP Web Dynpro developed within CRM 5.0 system
Enterprise Portal 6.0Hi Diz,
I tried doing the same thing by following the steps as mentioned by you. Just to re iterate,
1. Created a DC "Portal Application Standalone" project by the name myservice.
2. Created a portal service inside myservice by the ame AmitsService.
3. Exposed IAmitsService.class in the public part.
4 Build and deployed the DC on server and tested it through an abstract portal component and it worked FINE !!
Now..
5. Created anoter DC of type WebDynPro
6. Added SAP_JTECHS -> epbc.prtapi._api as a "Used DC" with dependency build time and runtime
7. Specified the sharing reference in the properties as PORTAL:sap.com/myservice
8. Tried to reference the service using the following code..
IAmitsService portalservice=(IAmitsService)WDPortalUtils.getServiceReference(IAmitsService.KEY);
9.Build and deployed the DC.
10. When I run the application I am getting the following error
Processing HTTP request to servlet [dispatcher] finished with error.
The error is: com.sap.engine.frame.core.load.SAPNoClassDefFoundError: com/sapportals/portal/prt/service/IService
Exception id: [000D6008418B005C0000002C00000D200004163CE6719E1D]
PLEASE ADVISE -
Hi All,
Current Scenario -
We have deployed ESS & MSS Business package on one WAS and the iviews are present on another WAS.We have created a Dedicated R/3 system which is pointing to the WAS where these packages are deployed.
All these things are working fine i.e. once the user maps the id pswd it directly runs the Web Dynpro applications in the iviews.
That means, even if application is running on one WAS, and the user personalises data on another WAS, it still retrieves the credentials and shows the appropriate results for ESS MSS Packages.
Query-
Now i need to implement the same scenario in my Web Dynpro application
Steps
1) I have the WD application running on one WAS and portal on another
2) In portal there is a R/3 system created
3) The Web Dynpro application needs to know if the user has personalised mapping against that system created on portal(other WAS)
4) If yes show him the home page else take him to the login page.
Just as it is implemented for ESS MSS Packages.
How can i pass the mapped data to the Web Dynpro iview ?
Thanks and Regards,
Samta NichaniAmol,
as this questions existed twice, I've deleted one.
As roles are in the UME, you can access them. But why do you want to do this? You could login to that user, but then the question is what you want to do....
Regards,
Benny -
Problem in calling XI generated Web Service via Java Web Dynpro
Hi experts,
I have problems with calling a web service, which was created by XI. I have already tested the web service with Altova XMLSpy. The Web Service works fine.
But when embedding this web service into Java Web dynpro application no message flow is given. I have two views one Selection View and one Result View which should show the answer sent by RFC-Call.
<b>My Settings in NWDS:</b>
During configuration of web dynpro I have choosen 'Import adaptive Web Service Model' --> Select wsdl file via local file system --> 'no logical destinations - use WSDL URL for metadata retrieval and web service execution'.
The model is also not shown in diagram view although I have added into the diagram.
The web service was created on XI 7.0.
Should I do any other settings e.g. in Visual Administrator, Web Dynpro Content Administrator?
So can anybody help me.
Thanks a lot.
Regards,
MarioHi Aviad,
thanks for your fast reply.
But in Web Service Navigator my Web Service is not shown, because I used the SOAP Adapter.
<b>My Web Service link:</b>
http://<host>:<port>/XISOAPAdapter/MessageServlet?channel=:SRV_GBD_WS_GET_DEB_DETAIL:CC_GBD_WEBSERVICE_SENDER&version=3.0&Sender.Service=&Interface=%5E*
During executing Web Dynpro I got following errors:
1. 'The system cannot find the path specified'.
2. com.sap.tc.webdynpro.model.webservice.exception.WSModelRuntimeException: Exception on creation of service metadata for WSDL URL
Regards,
Mario
Maybe you are looking for
-
What is the best iTunes alternative for a 4th Generation iPod Touch?
iTunes is the worst music application I have ever used and would love to be able to use a different application to sync music with. I have a really nice computer, but it is taking 10 times longer to sync music than Windows Media Player. I'm beginning
-
A question about compatiblilty of JDBC
Hi, there, I have a question about JDBC 3.0 in JDK1.4.1. We build a .jar using JDK1.4.1 and this .jar file provides JDBC 3.0 interface. I then tried to call the interface under JDK1.3.1 but it keeps asking me about the getParameterMetaData() in Prepa
-
Hi gurus, I want to process some material fromsubcontractor. Problem is that material is going 2 subcontractor in Tons and coming in pieces and scrap is also returning to company. . So what process shud I follow so that all material which I sent to h
-
HT201263 How can I get my password to work in order to update to IOS 7.1.1on iPad3
The Apple ID password does not seem valid for unexplained reasons to update to IOS 7.1.1. I know the password but it won't open.
-
What to do about iTunes files constantly disappearing?
Often, and more and more recently, when I go to my iTunes folders to burn a CD one of more selections in the playlist are suddently "lost" (I'm a performer and a composer, and I often make CDs of my own works for demo). These are from Sibelius files,