SLD and CIM models
Hi,
I am looking for a possibility to do extended reporting on SLD-Content (Product, Version SWC etc) that was created by users.
I know I can do a select and export of the model, but then I have a huge XML file. (And I have to know what was created by users)
AFAIK, this is a W3C based framework description of CIM. So the XML file must have a defined schema etc.
My hope is, since this seems to be W3C defined, that I can use existing evaluation tools of the CIM Schema.
Are there any tools to do evaluation of the content (list etc) ?
Or is there any SAP inbuild tool to list SLD content in various ways? Is there any documentation of the relation between the W3C definition and the SAP implementation?
thanks and cheers
hs
Hello
I have moved this thread to the Netweaver Administrator forum (this is not a PI technical issue). You may have a better chance of getting a quality answer to your query if it is in the Netweaver Administrator forum.
Regards
Mark Smyth
XI/PI Moderator
Similar Messages
-
What is the correct CIM model and CR content version to import into SLD?
Hi All,
I just met a difficulty that I can not find the correct import version of CIM model and CR content.
Could anyone share some valuable suggestions?
Situations now:
I installed ECC6 SR3 with ABAP+ Java stacks, after installation successfully, I logged onto SLD through http://xxx:50000/sld
since my CIM model and CR content version is too low, so I want to upgrade it.
The currect version is as below:
Model Version (sld/new): 1.5.24
SAP CR Content Version (sld/new): SAP_CR 2.0 (produced 03/17/2005)
Namespace Model Version Classes Instances Associations Total Objects
sld/active 1.5.24 908 36381 60183 97472
I have read note 669669 carefully and downloaded all the relevant versions before updating, the the results are not correct. something like "Unknow status -1" "import anyway" appears.
So, could anyone tell me the correct update file and sequence?
Thank you very much in advance.
Best regards,
NickHi Raghu,
Thanks for your quick reply.
I have downloaded 5 files:
cimsap51506_0-20005942.zip SP06 for SAP CR CONTENT UP TO 2009
CRDelta1418_0-10003379.ZIP SP18 for SAP CR CONTENT 2.0
CRDelta1511_0-10004549.ZIP SP11 for SAP CR CONTENT UP TO 2007
CRDelta41514_0-10006428.ZIP SP14 for SAP CR CONTENT UP TO 2008
CRDelta51506_0-20005942.ZIP SP06 for SAP CR CONTENT UP TO 2009
and the update sequence are the same as above, that is to say, first I update CIM model version successfully from 1.5.24 to 1.5.45, and then, I upload CRDelta1418_0-10003379.ZIP which gave me an error message "Unknown status -1", even how many times I click "Import anyway", it's useless.
after then, I tried to upload CRDelta1511_0-10004549.ZIP directly, but it also refused. warning message is "The selected aggregate import is not applicable to the current content version SAP_CR 2.0 of the target namespace.", I clicked button "Import anyway", but it's useless since there contains 0 objects, I don't know why, the message shows "The import will upgrade the content of export line SAP_CR from the current version 2.0 to version 4.0.
Contains 0 objects."
The file CRDelta1511_0-10004549.ZIP is under SAP CR CONTENT UP TO 2007, why its version is 4.0? is it because I need to firstly update to 3.0? and where can I find version 3.0?
I really appreciate your kind help.
Best regards,
Nick -
SLD to LMDB synchronization error- cim model mismatch
Hello All,
In system preparation, we have configured the SLD and in the setup LMDB step we have added this SLD for synchronization to LMDB. Once we activate the synchronization (full sync) we first get a message "LMDB is on cim model 1.6.31 and SLD is on 1.6.37.Please confirm if you want to update LMDB to cim model 1.6.37." I clicked YES for this. Then it starts a job SAP_LMDB_LDB_0000000001 in the ABAP stack. However this job is getting cancelled with below message:
An exception of class CX_LMDB_CIM_ERR occurred
Classes for sync do not match: source model version 1.6.37, target 1.6.31
Can anyone advice what can be done to resolve this situation? Just FYI, This is not a new implementation there was another SLD that was connected to the LMDB earlier, however that stopped working due to a version mismatch. So now I am trying to sync the LMDB to a new SLD.
Thanks,
Anilraj MenonHi Anilraj,
When switching Your CRsource for the SLD/LMDB sync on Solution Manager, SOLMAN_SETUP You have to be very carefully as this is not a standard operation as such. You need to make sure that You don't have pending changes in the LMDB sync from the old SLD.
Furthermore, You should use the template in Solman_Setup, system preparation, step 5.2 --> click on "Advanced", and in actions, You should set the CRsource to the new SLD.
But please remark, this could lead to some inconsistence in Your LMDB thus the need to have no pending changes in the LMDB sync (You can see if there are any in the very same GUI where You set the CRsource - look in the "Status Details" pane: "Number of Source Changes Pending". This figure should be "0".
Also have a look on the blog from Wolf Hengevoss. I guess this adress Your exact problem:
SLD and LMDB Topology: Replacing the Source SLD for the LMDB
Regards,
Kurt -
Where can i find SLD Cim-Model 1.5.26 ?
Where can i find Cim-Model 1.5.26 to download...
The only one i can find is in CR Content and this are versions <1.4.18
best regards ChristophHi,
Which components i need to download to get CIM - 1.5.20 & CR 3.4 .
Plz advice.
Thanks in advance. -
Alert Inbox disappeared after CIM Model Update
Hi, a collegue of mine has updated the CIM Model of the SLD Content concern some HR stuff.
After this the Alert-Box and Alert-Konfiguration is no longer availaible which means that i get a 404. I checked the paramters in Exchange profile like given in 750287 - even checked services in SICF but everything looks good so far.
We also restarted the Java-Stack but with no success! Does somebody has solved sth like this?
brIs the CIM/SLD data at the same patch level as the of XI? This can cause issues.
Also, check the RWB config in the Content Maintenance section of the SLD to make sure the correct associations are still in place. -
Hi Experts,
I am trying to get my SLD running but i am getting this message in the admisistration tab . I think there is a problem with the version of CIM installed.
i am getting the below mentioned message.
Model incompatible to server. Please import a newer model. Model version: 1.4.29, server requires at least version: 1.4.31
Please guide on where i can find this version and how to proceed.Hi Vignesh,
The SAP Note 907897 may solve your problem.
Check the solution part of note.
Solution
The errors described above should ideally be avoided using the following measures:
1. Before you upgrade to the model version 1.5, check which version is currently imported in the SLD Web UI (Administration -> Details). If the current version is lower than 1.4.30, import model 1.4.x (x must be 30 or higher) before updating to model version 1.5. You can find this version on SAP Service marketplace under SAP MASTER DATA FOR SLD 2.0, "SAP CIM model 1.4 Support Package 08". Version Support Package 18 already contains the data for the conversion to Version 1.5.
The versions may be different for your requirement.
Regards,
Naveen -
Settings SLD and JCO connection for Java Web Dynpro
Hi BI Gurus,
I'm a Business Intelligence newbye and I'm a bit confused about Web Dynpro configurations.
I try to execute, through Netweaver Developer Studio 7, a simple java Web Dynpro who call the standard Flight List BAPI.
My configuration is: NW 2004s installed on BI server (with java instance and j2EE Server) and Flight List BAPI stored on R/3 ECC. 5 System in another server.
Now, my doubt are:
1) in SLD Data Supplier (J2EE Visual Admin on BI Server) CIM configuration, what are the connections parameter necessary?The BI host or R/3 host?
2)if I set BW system parameters in SLD and in NWDS when I try to run my simple web dynpro an error occour This is the output:
The initial exception that caused the request to fail, was:
com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: Failed to resolve JCO destination name 'WD_FLIGHTLIST_RFC_METADATA_DEST' in the SLD. No such JCO destination is defined in the SLD.
Correction Hints
Accessing the System Landsape Directory (SLD) failed. Depending on the concrete reason (see root cause) check the following:
is the SLD Supplier in the J2EE engine configured correctly? See the SLD documentation for more details about the SLD and about how to configure it.
are all JCO destinations maintained correctly? Use the preinstalled Web Dynpro Content Admin application to check/edit the destination. Use the Ping and Test functions of the Content Admin to verify that each destination is properly configured.
Additional information about the System Landscape Directory and the Web Dynpro Content Admin can be found in the SAP Developer Network (SDN) and in the Online Help for the SAP Web Application Server (installed with SAP NetWeaver Developer Studio and available online).
Note: the above hints are only a guess. They are automatically derived from the exception that occurred and therefore can't be guaranteed to address the original problem in all cases.
3)where can I create new JCO connections?What are the requirements settings?
I am always available for answers about the post!!
Help me please!!
Thanks thousand and sorry for my incorrect english!!Andrea,
You can Create the JCo destination from Content Administrator. You must login as Administrator.
use the link as
http://<server>:<port>/webdynpro/welcome/Welcome.jsp, select Content Administator->Create JCo Destinations/Maintain JCo Destinations.
Please have a look on the following links regarding creating/maintaining JCo destinations. The are usally asked questions regarding JCo destinations.
Create JCo destinations:
/message/4947478#4947478 [original link is broken]
Creating JCO Destinations
/message/5369333#5369333 [original link is broken]
Rgs,
Dni -
Problem with SLD and Creation of JCo
Hello everyone!
I have a problem with the SLD and the Creation of JCo on the Portal, in trying to create the JCo always tells me that the name used there in the SLD, being that the facility is new.
Who performs the installation, set in the SLD the ECC 6 PRD, delete it to see if I could create a JCo but still the error again when creating the ECC 6 PRD in the SLD I said that already exists and can not create it.
I found a forum which recommended re-import the cimsap .... .... zip and zip CR_Content which would clean everything, I managed to import the zip cimsap ... but in trying to raise CR_Content gives me the following message "All incremental updates of the selected aggregate import for export SAP_CR line have already been loaded before. You require a newer import to update your current content SAP_CR version 4.11." .
I recommend, do the installation again, reload the cimsap.zip and CR_Content.zip a copy homogeneous.
from already thank you very much
Text of error to create JCo destination
Failed to process request. Please contact your system administrator.
[Hide]
Error Summary
While processing the current request, an exception occured which could not be handled by the application or the framework.
If the information contained on this page doesn't help you to find and correct the cause of the problem, please contact your system administrator. To facilitate analysis of the problem, keep a copy of this error page. Hint: Most browsers allow to select all content, copy it and then paste it into an empty document (e.g. email or simple text file).
Root Cause
The initial exception that caused the request to fail, was:
java.lang.NullPointerException
at at com.sap.tc.webdynpro.serverimpl.wdc.sl.SystemLandscapeFactory.checkStatus(SystemLandscapeFactory.java:991)
at at com.sap.tc.webdynpro.services.sal.sl.api.WDSystemLandscape.checkStatus(WDSystemLandscape.java:469)
at at com.sap.tc.webdynpro.tools.sld.ButtonBar.onActionGoForward(ButtonBar.java:505)
at at com.sap.tc.webdynpro.tools.sld.wdp.InternalButtonBar.wdInvokeEventHandler(InternalButtonBar.java:280)
at at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
... 28 more
See full exception chain for details.
System Environment
Client
Web Dynpro Client Type HTML Client
User agent Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; InfoPath.1)
Version null
DOM version null
Client Type msie7
Client Type Profile ie6
ActiveX enabled
Cookies enabled
Frames enabled
Java Applets enabled
JavaScript enabled
Tables enabled
VB Script enabled
Server
Web Dynpro Runtime Vendor: SAP, build ID: 7.0017.20081210091801.0000 (release=NW04S_17_REL, buildtime=2009-01-12:09:43:27[UTC], changelist=52884, host=pwdfm114), build date: Tue Apr 28 19:28:39 CLT 2009
J2EE Engine 7.00 patchlevel 48199.450
Java VM IBM J9SE VM, version:2.2, vendor: IBM Corporation
Operating system Linux, version: 2.6.18-92.el5, architecture: amd64
Session & Other
Session Locale en
Time of Failure Fri Aug 28 11:43:53 CLT 2009 (Java Time: 1251474233677)
Web Dynpro Code Generation Infos
sap.com/tcwdtools
No information available null
sap.com/tcwddispwda
No information available null
sap.com/tcwdcorecomp
No information available null
Detailed Error Information
Detailed Exception Chain
java.lang.NullPointerException
at com.sap.tc.webdynpro.serverimpl.wdc.sl.SystemLandscapeFactory.checkStatus(SystemLandscapeFactory.java:991)
at com.sap.tc.webdynpro.services.sal.sl.api.WDSystemLandscape.checkStatus(WDSystemLandscape.java:469)
at com.sap.tc.webdynpro.tools.sld.ButtonBar.onActionGoForward(ButtonBar.java:505)
at com.sap.tc.webdynpro.tools.sld.wdp.InternalButtonBar.wdInvokeEventHandler(InternalButtonBar.java:280)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:321)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
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:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
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(AccessController.java:207)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)Hello!!
The "SLD" with which I am working up to Portal, the "ECC" installs itself as "ABAP.
Who did the installation and initial configuration, do not leave any documentation about it.
Now I need to create the systems and "JCo" necessary to enable them to implement the "ESS", but errors are presented above.
Some days ago I managed to update the CR_Content, which allowed me to create the "JCo" but at the time of the test, says' com.sap.mw.jco.JCO $ Exception: (103) RFC_ERROR_LOGON_FAILURE "name or password incorrect .
I managed to also create the portal systems, "System Administration -> System Configuration -> Content Portal" and to test it fails on "Test Connection with Connector", which as noted is associated with the connectors "JCo".
For the creation of the system, I think I should create something in the Visual Administrator ", but within the documentation that I do not see anything about it.
thanks for your help! -
Problems in SLD and Cache refresh (SXI_CACHE).
Dear Experts,
I am facing SLD and Cache refresh problems in PI 7.0 on HP-UX.
1) SXI_CACHE : Last Error During Cache refresh is showing LCR_GET_OWN_BUSINESS_SYSTEM - NO_BUSINESS_SYSTEM error. And also Start Delta Cache Refresh / Start Complete Cache refresh are in deactive mode (Frozen).
2) SLDCHECK : Log says No Business System for ABC Client 100 ".
where ABC=SID. Business System INTEGRATION_SERVER_ABC is declared in SLD and client 100 is assigned.
My question is : Is this a BASIS or DEVELOPER issue? Also please let me know if you have any solutions for the above mentioned issue. Thanks in Advance.
SLDCHECK Log Snippet:
SLD server access settings:
host name: ABCXIDEV
port number: 50000
user : PIAPPLUSER
Use transaction SLDAPICUST if you wish to maintain the SLD server access data
Launching the SLD GUI in a separate browser window...
=> Verify in the browser GUI that the SLD is in a healthy running state!
Calling function LCR_LIST_BUSINESS_SYSTEMS
Retrieving data from the SLD server...
Function call terminated sucessfully
List of business systems maintained in the SLD:
INTEGRATION_SERVER_ABC
ERP_DEV_100
Calling function LCR_GET_OWN_BUSINESS_SYSTEM
Retrieving data from the SLD server...
No corresponding business system found for system ABC client 100
=> Check and maintain the SLD content for the current clientHello,
Since this is an PI system, your XI consultant must have created/will need to create business systems in SLD for the scenario to work properly. This error is because it cannot find the business system.
You cannot point out the fingers on Basis or XI and say that it is THEIR issue. Please consult with the consultant who is doing the XI interface and check if the business systems he require are properly created in SLD. If not, create them or ask them to create it (if they are allowed to..).
From the error, what i can see is that you have defined an integration server INTEGRATION_SERVER_ABC in SLD . the XI interface is checking the required business system in the integration server INTEGRATION_SERVER_ABC in SLD but cannot find it over there. Please check the integration server INTEGRATION_SERVER_ABC in SLD and talk to the XI consultant and you will be able to fix this with their help.
Hope this helps you..
Regards,
Jazz -
Difference between OBIEE Logical Modelling and physical modelling
HI.
what is the difference between logical modeling (BMM) and physical modelling(Physical layer) in obiee admin tool
please narrate it in definition format
thank you
rakeshHi rakesh,
Administrator tool consists of 3 layers
Physcial layer:-It is typically first layer built in the repository.Contains objects representing the physical data sources to which the BI server submits queries.It may conatin multiple data sources.The common way is to import metadat from different databases.You can define joins after import if they are not defined.
Business model and mapping layer:-It is defined as business or logical models of data and specifies the mapping between the physical and business layers.This is where the physical schemas are simplified to form the basis for the end user.We can say data is seperated into facts and dimension tables
Presentation layer:-simplifies and organizes the business model to make it easy for users to understand and query
go through the user guides for all the definition and subject
Hope it helps you.my points?
By,
Kranthi
Edited by: Kranthi.K on Sep 1, 2009 10:22 PM -
Importing logical and physical model from Sybase power designer/Erwin
Hello,
We have several models created in Sybase Power designer, logical and as a well as physical. Is there a way to directly import models into Oracle designer?
Thank you for your help.
SyedHi Syed,
ERwin has a facility to export to Designer 2000. Of course you're probably not using Designer 6.0 or earlier so it's of little use.
I have been looking at a couple of tools for importing from ERwin: Reischmann Informatiks TOOLBUS Interface for Oracle Designer and ALLFusion ERwin; and Meta Integration Technologys Meta Integration Model Bridge (MIMB). Neither product is free (nor inexpensive) but if you've got a number of models to convert then the tools seem cheap by comparison. Also, none of the products that I've looked at recreate the actual diagrams (not that I expected them to).
I am leaning towards TOOLBUS as it provides more complete migration of Logical and Physical models (especially the linkages between the models) using Oracle Designers API rather than a DAT file as provided by MIMB.
Hope this helps,
Wayne Lehman
Avanti Business Systems Inc. -
Links for SQL Developer and Data Modeler not working?
Hi folks,
I tried to access the new SQL Developer and Data Modeler links posted in the April 1 message (and on the Oracle site) from a couple of machines with no luck (empty zip files) - is there an update to the links?
Thanks!
TomoIn Firefox zero length zip. In IE loses connection to downloads.oracle.com.
-
Need latest SLD and NWDI version for PI 7.1 EHP1
Can any one update me the latest SLD and NWDI version for PI 7.1 EHP1?
Kindly provide me the path of implementation guides for SLD, NWDI which can be used with PI 7.1 EHP1. For PI 7.1 EHP1, can we use the same version of SLD and NWDI which used IN PI 7.1?
Please help me for the above questions.
Regards,
Yuvaraj.Hi Yuvaraj,
Please check the NWDI Development Infrastructure 7.11 and SLD 7.11 for the PI 7.1 EHP1.
Go to Service Market Place - Software Download > Support Packages and Patches > Support Packages and Patches - Entry by Application Group > SAP NetWeaver and complementary products > SAP NETWEAVER PI > SAP EHP1 FOR SAP NW PI 7.1 >Entry by Component > Development Infrastructure.
Hope it will helps
Regards
Arun Jaiswal -
HT4061 what is the diffarent iPad 4g and iPad model number md523ty ?
what is the diffarent iPad 4g and iPad model number md523ty ?
The MD523TY iPad is one of the configurations of the fourth generation models. Click here for more information.
(81265) -
Unable to compile T1 Architecture and Simulation modelling tool
Hello,
I am trying to compile the T1 Simulation and Architecture modelling tool. The whole package is downloaded from opensparc.net
As a requirement, i am using Solaris 10 on SPARC based machine with Solaris Studio 12.3 as the compiler.
When i am running the "build_sas.sh full" script, it gives me an error:
--- Building n1 in strand ---
/opt/solarisstudio12.3//bin/CC -G -KPIC -fast -xO5 -DNDEBUG -DRS_INLINE=inline -DRS_MPSAS_COMPATIBLE -xarch=v9a -DHOST64BIT=1 -DN1_BOOTS10 -DMEMORY_SPARSE -I../../include/strand -I../../include/fw -I../../include/mmu -I../../include/asi -I../../include/core -I../../include/cpu -I../../include/system -I../../include/trap -I../../include/register -I/scratch//sam-t1/devtools/64/shade/inc -c -o obj64opt_n1/V9/V9_AsiReg.o V9/V9_AsiReg.cc
CC: Warning: -xarch=v9a is deprecated, use -m64 -xarch=sparcvis instead
"../../include/fw/Callee.h", line 98: Error: 'Riesling::operator new(unsigned long, Riesling::CalleeAllocator&)' may not be declared within a namespace.
1 Error(s) detected.
*** Error code 2
make: Fatal error: Command failed for target `obj64opt_n1/V9/V9_AsiReg.o'
Current working directory /scratch/sam-t1/src/riesling-cm/riesling/src/strand
*** Error code 1
make: Fatal error: Command failed for target `strand'
the Callee.h file has the following declaration for line#97:
inline void* operator new( size_t size, CalleeAllocator& a )/*{{{*/
// This new() function is called for code written as
// new(CalleeAllocator::allocator) Callee0<void>(f);
// and allocates size bytes from the CalleeAllocator
return a.alloc(size);
I did some Google search, and found that, "An allocation function shall be a class member function or a global function; a program is ill-formed if an allocation function is declared in a namespace scope other than global scope or declared static in global scope. [..]" (c++ - operator new inside namespace - Stack Overflow).
Would appreciate any help or suggestion.I tried you last suggestion, by simply moving the "new" function before the namespace, but it gave me the following Error: The prior declaration for operator new(unsigned long) has no exception specification.
So, I naively just defined the new as below, just to see what happens:
41 inline void* operator new( size_t size, CalleeAllocator& a) throw()
42 {return a.alloc(size);
43 }
which, after compilation gives the following error:
Error: std::bad_alloc is not in the prior exception specification
The download link to the whole package is here: OpenSPARC T1
At the end of the page, there is the download link to the OpenSPARC T1 Processor for Architecture and Performance Modeling Tools.
below is the original Callee.h file: Line 97 is where the operator new is defined which appears to be outside of namespace Riesling.
* ========== Copyright Header Begin ==========================================
* OpenSPARC T1 Processor File: Callee.h
* Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
* The above named program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License version 2 as published by the Free Software Foundation.
* The above named program is distributed in the hope that it will be
* useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
* You should have received a copy of the GNU General Public
* License along with this work; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
* ========== Copyright Header End ============================================
#ifndef __Callee_h__
#define __Callee_h__
** Copyright (C) 2002, Sun Microsystems, Inc.
** Sun considers its source code as an unpublished, proprietary
** trade secret and it is available only under strict license provisions.
** This copyright notice is placed here only to protect Sun in the event
** the source is deemed a published work. Disassembly, decompilation,
** or other means of reducing the object code to human readable form
** is prohibited by the license agreement under which this code is
** provided to the user or company in possession of this copy."
#include "DataTypes.h"
namespace Riesling {
class CalleeAllocator/*{{{*/
// CalleeAllocator is a helper class for implementing the callee_method() and
// callee_function() functions that dynamically allocate a Callee object. This
// class takes the burden of the coder for having to manage those dynamically
// allocated objects and also avoids many calls to malloc().
public:
CalleeAllocator() : page(0), free((void**)1), full(0) {}
~CalleeAllocator()
while (page)
Page* help = page;
page = page->next;
delete help;
void* alloc( uint_t size )
void* cell;
size = (size + sizeof(void*) - 1) / sizeof(void*);
if ((free + size) > full)
page = new Page(page);
free = page->page;
full = page->page + Page::SIZE;
cell = free;
free = free + size;
return cell;
static CalleeAllocator allocator;
private:
class Page
public:
enum { SIZE = 4096 };
Page( Page* pntr ) : next(pntr) {}
Page* next;
void* page[SIZE];
Page* page;
void** free;
void** full;
inline void* operator new( size_t size, CalleeAllocator& a )/*{{{*/
// This new() function is called for code written as
// new(CalleeAllocator::allocator) Callee0<void>(f);
// and allocates size bytes from the CalleeAllocator
return a.alloc(size);
#ifndef COMPILER_ABI_CHANGED
inline void* gnu_vtbl_lookup( void* object, void* method )/*{{{*/
// The GNU compiler makes a virtual method into an integer index into the
// virtual table. It indicates this through bit 0 of the method being 1. If that
// bit is set then we get the virtual table and index for the method. If the bit 0
// is 0 then the method is a pointer to a function already.
#ifdef __GNU__
if (int(method) & 1)
return (*(void***)object)[int(method) / sizeof(void*)];
else
#endif
return method;
template<class Object, class Return> union MethodToFunction0/*{{{*/
// The templated union MethodToFunction0 converts a method pointer
// to a function pointer. The SparcWorks compiler already transforms
// method pointers to function pointers. For the GNU C++ compiler we
// need to check for virtual functions and do a virtual table lookup.
MethodToFunction0<Object,Return>( Object* object, Return (Object::*_method)() )
method(_method)
(void*&)function = gnu_vtbl_lookup(object,(void*)function);
Return (Object::*method)(); // The method to convert to a function
Return (*function)(void*); // The converted function, the first argument is the this pointer
template<class Return> class Callee0/*{{{*/
// The Callee class holds the function pointer or method pointer that
// represents the callee. The caller is a pointer to the Callee class.
public:
typedef Return (*Function)();
typedef Return (*Method)(void*);
Callee0<Return>( Function f )
object(0),
function(f)
template<class Object> Callee0<Return>( Object* o, MethodToFunction0<Object,Return> m )
object(o),
method(m.function)
Return call()
return object ? (*method)(object) : (*function)();
protected:
void* object; // If object is 0 (NULL) then we have a function to call
union // Else a method need to be called.
Method method;
Function function;
template<class Return> Callee0<Return>* callee_function( Return (*f)() )/*{{{*/
// callee_function() creates a Callee object of the function. The compiler
// helps in figuring out the type signature ... hurra for templates:
// Callee<void>* c = calee_function(f);
return new(CalleeAllocator::allocator) Callee0<Return>(f);
template<class Object, class Return> Callee0<Return>* callee_method( Object* o, Return (Object::*m)() )/*{{{*/
// callee_method() creates a Callee object of the method. The compiler
// helps in figuring out the type signature. The function requires an
// object and the template enforces that the object and method are of the
// same type. Don't cast object pointers. The method must exists, e.g.
// inherited methods need to be replicated (fat interface). Virtual methods
// are eradicated.
return new(CalleeAllocator::allocator) Callee0<Return>(o,MethodToFunction0<Object,Return>(o,m));
template<class Object, class Return, class Arg1> union MethodToFunction1/*{{{*/
MethodToFunction1<Object,Return,Arg1>( Object* object, Return (Object::*_method)(Arg1) )
method(_method)
(void*&)function = gnu_vtbl_lookup(object,(void*)function);
Return (Object::*method)(Arg1);
Return (*function)(void*,Arg1);
template<class Return, class Arg1> class Callee1/*{{{*/
public:
typedef Return (*Function)(Arg1);
typedef Return (*Method)(void*,Arg1);
Callee1<Return,Arg1>( Function f ) : object(0), function(f) {}
template<class Object> Callee1<Return,Arg1>( Object* o, MethodToFunction1<Object,Return,Arg1> m )
object(o),
method(m.function)
Return call( Arg1 a1 )
return object ? (*method)(object,a1) : (*function)(a1);
protected:
void* object;
union
Method method;
Function function;
template<class Return, class Arg1> Callee1<Return,Arg1>* callee_function( Return (*f)(Arg1) )/*{{{*/
return new(CalleeAllocator::allocator) Callee1<Return,Arg1>(f);
template<class Object, class Return, class Arg1> Callee1<Return,Arg1>* callee_method( Object* o, Return (Object::*m)(Arg1) )/*{{{*/
return new(CalleeAllocator::allocator) Callee1<Return,Arg1>(o,MethodToFunction1<Object,Return,Arg1>(o,m));
template<class Object, class Return, class Arg1, class Arg2> union MethodToFunction2/*{{{*/
MethodToFunction2<Object,Return,Arg1,Arg2>( Object* object, Return (Object::*_method)(Arg1,Arg2) )
method(_method)
(void*&)function = gnu_vtbl_lookup(object,(void*)function);
Return (Object::*method)(Arg1,Arg2);
Return (*function)(void*,Arg1,Arg2);
template<class Return, class Arg1, class Arg2> class Callee2/*{{{*/
public:
typedef Return (*Function)(Arg1,Arg2);
typedef Return (*Method)(void*,Arg1,Arg2);
Callee2<Return,Arg1,Arg2>( Function f ) : object(0), function(f) {}
template<class Object> Callee2<Return,Arg1,Arg2>( Object* o, MethodToFunction2<Object,Return,Arg1,Arg2> m )
object(o),
method(m.function)
Return call( Arg1 a1, Arg2 a2 )
return object ? (*method)(object,a1,a2) : (*function)(a1,a2);
protected:
void* object;
union
Method method;
Function function;
template<class Return, class Arg1, class Arg2> Callee2<Return,Arg1,Arg2>* callee_function( Return (*f)(Arg1,Arg2) )/*{{{*/
return new(CalleeAllocator::allocator) Callee2<Return,Arg1,Arg2>(f);
template<class Object, class Return, class Arg1, class Arg2> Callee2<Return,Arg1,Arg2>* callee_method( Object* o, Return (Object::*m)(Arg1,Arg2) )/*{{{*/
return new(CalleeAllocator::allocator) Callee2<Return,Arg1,Arg2>(o,MethodToFunction2<Object,Return,Arg1,Arg2>(o,m));
template<class Object, class Return, class Arg1, class Arg2, class Arg3> union MethodToFunction3/*{{{*/
MethodToFunction3<Object,Return,Arg1,Arg2,Arg3>( Object* object, Return (Object::*_method)(Arg1,Arg2,Arg3) )
method(_method)
(void*&)function = gnu_vtbl_lookup(object,(void*)function);
Return (Object::*method)(Arg1,Arg2,Arg3);
Return (*function)(void*,Arg1,Arg2,Arg3);
template<class Return, class Arg1, class Arg2, class Arg3> class Callee3/*{{{*/
public:
typedef Return (*Function)(Arg1,Arg2,Arg3);
typedef Return (*Method)(void*,Arg1,Arg2,Arg3);
Callee3<Return,Arg1,Arg2,Arg3>( Function f ) : object(0), function(f) {}
template<class Object> Callee3<Return,Arg1,Arg2,Arg3>( Object* o, MethodToFunction3<Object,Return,Arg1,Arg2,Arg3> m )
object(o),
method(m.function)
Return call( Arg1 a1, Arg2 a2, Arg3 a3 )
return object ? (*method)(object,a1,a2,a3) : (*function)(a1,a2,a3);
protected:
void* object;
union
Method method;
Function function;
template<class Return, class Arg1, class Arg2, class Arg3> Callee3<Return,Arg1,Arg2,Arg3>* callee_function( Return (*f)(Arg1,Arg2,Arg3) )/*{{{*/
return new(CalleeAllocator::allocator) Callee3<Return,Arg1,Arg2,Arg3>(f);
template<class Object, class Return, class Arg1, class Arg2, class Arg3> Callee3<Return,Arg1,Arg2,Arg3>* callee_method( Object* o, Return (Object::*m)(Arg1,Arg2,Arg3) )/*{{{*/
return new(CalleeAllocator::allocator) Callee3<Return,Arg1,Arg2,Arg3>(o,MethodToFunction3<Object,Return,Arg1,Arg2,Arg3>(o,m));
#else
template<class Return> class Callee0/*{{{*/
public:
Callee0<Return>() {}
virtual ~Callee0() {}
virtual Return call () = 0;
template<class Return> class CalleeFunction0 : public Callee0<Return>/*{{{*/
public:
typedef Return (*Function)();
CalleeFunction0<Return>( Function f ) : Callee0<Return>(), function(f) {}
Return call () { return (*function)(); }
protected:
Function function;
template<class Object, class Return> class CalleeMethod0 : public Callee0<Return>/*{{{*/
public:
typedef Return (Object::*Method)();
CalleeMethod0<Object,Return>( Object* o, Method m ) : Callee0<Return>(), object(o), method(m) {}
Return call () { return (object->*method)(); }
protected:
Object* object;
Method method;
template<class Return> CalleeFunction0<Return>* callee_function( Return (*f)() )/*{{{*/
return new(CalleeAllocator::allocator) CalleeFunction0<Return>(f);
template<class Object, class Return> CalleeMethod0<Object,Return>* callee_method( Object* o, Return (Object::*m)() )/*{{{*/
return new(CalleeAllocator::allocator) CalleeMethod0<Object,Return>(o,m);
template<class Return, class Arg1> class Callee1/*{{{*/
public:
Callee1<Return,Arg1>() {}
virtual ~Callee1() {}
virtual Return call ( Arg1 a1 ) = 0;
template<class Return, class Arg1> class CalleeFunction1 : public Callee1<Return,Arg1>/*{{{*/
public:
typedef Return (*Function)( Arg1 );
CalleeFunction1<Return,Arg1>( Function f ) : Callee1<Return,Arg1>(), function(f) {}
Return call ( Arg1 a1 ) { return (*function)(a1); }
protected:
Function function;
template<class Object, class Return, class Arg1> class CalleeMethod1 : public Callee1<Return,Arg1>/*{{{*/
public:
typedef Return (Object::*Method)( Arg1 );
CalleeMethod1<Object,Return,Arg1>( Object* o, Method m ) : Callee1<Return,Arg1>(), object(o), method(m) {}
Return call ( Arg1 a1 ) { return (object->*method)(a1); }
protected:
Object* object;
Method method;
template<class Return, class Arg1> CalleeFunction1<Return,Arg1>* callee_function( Return (*f)(Arg1) )/*{{{*/
return new(CalleeAllocator::allocator) CalleeFunction1<Return,Arg1>(f);
template<class Object, class Return, class Arg1> CalleeMethod1<Object,Return,Arg1>* callee_method( Object* o, Return (Object::*m)(Arg1) )/*{{{*/
return new(CalleeAllocator::allocator) CalleeMethod1<Object,Return,Arg1>(o,m);
template<class Return, class Arg1, class Arg2> class Callee2/*{{{*/
public:
Callee2<Return,Arg1,Arg2>() {}
virtual ~Callee2() {}
virtual Return call ( Arg1 a1, Arg2 a2 ) = 0;
template<class Return, class Arg1, class Arg2> class CalleeFunction2 : public Callee2<Return,Arg1,Arg2>/*{{{*/
public:
typedef Return (*Function)( Arg1, Arg2 );
CalleeFunction2<Return,Arg1,Arg2>( Function f ) : Callee2<Return,Arg1,Arg2>(), function(f) {}
Return call ( Arg1 a1, Arg2 a2 ) { return (*function)(a1,a2); }
protected:
Function function;
template<class Object, class Return, class Arg1, class Arg2> class CalleeMethod2 : public Callee2<Return,Arg1,Arg2>/*{{{*/
public:
typedef Return (Object::*Method)( Arg1, Arg2 );
CalleeMethod2<Object,Return,Arg1,Arg2>( Object* o, Method m ) : Callee2<Return,Arg1,Arg2>(), object(o), method(m) {}
Return call ( Arg1 a1, Arg2 a2 ) { return (object->*method)(a1,a2); }
protected:
Object* object;
Method method;
template<class Return, class Arg1, class Arg2> CalleeFunction2<Return,Arg1,Arg2>* callee_function( Return (*f)(Arg1,Arg2) )/*{{{*/
return new(CalleeAllocator::allocator) CalleeFunction2<Return,Arg1,Arg2>(f);
template<class Object, class Return, class Arg1, class Arg2> CalleeMethod2<Object,Return,Arg1,Arg2>* callee_method( Object* o, Return (Object::*m)(Arg1,Arg2) )/*{{{*/
return new(CalleeAllocator::allocator) CalleeMethod2<Object,Return,Arg1,Arg2>(o,m);
#endif
#endif
Maybe you are looking for
-
Droplet not working correctly in Lightroom 4 Export
Having finally found time to understand how droplets created in Photoshop work I realised I could save a huge amount of time by integrating droplets into my workflow through the Lightroom export dialogue. I will not regail you with the hassle I had w
-
Recovering my music from a Zen Mi
Hey all, I have a first generation Zen micro with the non plays-for-sure firmware on it. I recently lost my music library and i was wondering if there was any way that i could get the songs on my mp3 player back onto my computer? Opening the device i
-
Loading jpegs into video playlist from XML
I would be gratefull if anyone out there might be able to help me. I want to display jpegs alongside the text when selecting which videos to play, the problem is I am not sure how to change the xml file and the actionscript. Can you please help. Here
-
Nokia E71 - New Firmware Released 2nd July - Vr 30...
Hi All If you didn't know already a new firmware for the Nokie E71 was released yesterday. I have updated mine this afternoon, and it looks good so far. The only thing I have initally noticed that a Myspace Facebook and Youtube application has appear
-
Can one migrate a hard drive from G5 to an intel machine?
My G5 tower (PPC) has a very new SATA drive as the boot drive. I am getting a new Mac Pro tower. Can I just take the HD out of the G5 and plop it into the Mac Pro, or are there formatting (or other) issues that I might encounter? Or, should I clone t