IRM Web Services Adding a New Role to a Context

We are in the process of using the IRM web services to create a system that will automatically create users/contexts and seal documents over the web.
So far I can successfully create users and groups and assign permissions properly as well as create context.
I am having trouble adding roles to the context.
The error I'm getting is "The attribute 'Features' is mandatory".
The problem is that there is no function to add features to the ContextRole object.
How do I set up the features so that I can save then new ContextRole?
Tom

Hi Tom
Response from engineering on your latest questions:
Depending on which web service code generator is used, collection typed properties may or may not be provided with set operation. If the code generator does provide a set method for collections, then you can just specify the set of features you require as so:
// Java
Collection<Feature> features = new ArrayList<Feature>();
features.add(feature);
ContextRole role = new ContextRole();
role.setFeatures(features);
However if the set method is NOT provided, then you need to manipulate the collection directly, by using the get method and then using the standard collection methods to alter the contents.
// Java
ContextRole role = new ContextRole();
role.getFeatures().add(feature);
These two examples are functionally the same, they both create a context role object with one feature.
Kind regards
Andrew

Similar Messages

  • Accessing IRM Web Services with Coldfsuion

    We are looking to use the IRM web services with Coldfusion. Coldfusion abstracts Web Services calls through Java calls to the point of just setting up structures and calling the functions.
    My question is about the process for building the correct parameters for the IRM services. I have the JDeveloper examples working but I can't make enough sense of what is goin on through all the calls to build the proper information.
    What I don't understand yet are things like where do I get the server key and at what point do I authenticate? Do I need to do separate calls for these things.
    I've captured a soap transaction for the update user example in JDeveloper and see there is a serverKey but no other authentication. Is this all I need?
    The web services documentation mentions authentication needs to be basic authentication. Other than that there is not more info. Is there any other source of info?

    Hi
    Sorry, things are a bit confused when it comes to Web Services (WS) documentation. At the moment (in 10g), it's mixed up with the older stuff in the Component API Help file. Also, apart from a few snippets and the JDeveloper examples, there is no WS sample code. We hope to address this in 11g.
    The web services required HTTP basic authentication details to be set before the call is invoked. This will be the username and password of the sealing user, so that user will need to be configured to use Standard Auth, rather than NT Auth. How to set this depends on the web service stack used on the client, but with JAX-RPC there are APIs that allow the user name and password to be specified. e.g.
    +// User name for authentication purposes+
    contextServices._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY,args[1]);
    +// Password for authentication purposes+
    contextServices._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY,args[2]);
    This snippet is in the Help file under the header "Authentication", or directly via:
    mk:@MSITStore:C:\Program%20Files\SealedMedia\Enterprise%20APIs%20SDK\Components%20SDK\Docs\smcomponents.chm::/ws_documentation_authentication.htm
    As for the Server Key, each IRM Server has a unique UUID value. The easiest way to get this is to call the following web service method on the “ServerServices” web service port.
    LicenseServer_ref reference = serverServices.getLicenseServerReference();
    System.out.println(reference.getServerKey());
    One you’ve obtained this it will never change (for the server you are using) and can be cached or stored for all future web service calls.
    I think you need to have the auth properties set, and the Server Key handy, for most WS methods to work, but I don't think it matters in which order you get them.
    Hope this helps,
    David

  • Web Service authentication by security role

    I define an web service with authentication by security role.
    I access web service via web dynpro model in EP7.
    It appear below error:
    <b>Exception on execution of web service with WSDL URL 'http://XXX:50000/XXX/Config1?wsdl ' with operation 'XXXXXXXX' in interface 'XXXVi_Document'</b>
    how should i do to solve this problem ?

    Hi WU,
                Use this code with ur webservice & check the error in log file.May be we will get some more info abt this.
    This code will be in execute method
    Request_XXX reqData = new Request_XXXdbModel);
    reqData.wdSetInvocationLogEnabled(true);
    in the catch block give this
    logger.traceThrowableT(
         Severity.ERROR,
         wdComponentAPI.getApplication().getDeployableObjectPart().getName(),
         ex);
         //if (logger.beDebug()) {
         logger.fatalT(requestModel.wdGetRequestLog());
         logger.fatalT(requestModel.wdGetResponseLog());
         logger.fatalT(requestModel.associatedModelClassInfo().getModelInfo().toString());
         logger.fatalT(requestModel.toString());
    request model is ue model & ex is the exception in catch block.
    execute the application after this change & check the server log.In case u r not able to find out the problem,send the stach trace.
    regards
    Sumit

  • Can't setup ePrint / Web Services on a new HP 8600 Pro Plus Wireless Printer

    I just purchased a new HP Officejet Pro 8600 Plus All in one printer. I setup the printer on my home wireless network and it prints great. I am now trying to setup ePrint and when I go through the option to setup the Web Services /ePrint function on the Printer or via the web application for the printer I get the following error:
    "Cannot connect to the server.
    Check the Internet connection and try again. Or contact your system administrator or the person who set up the printer. If your network requires a proxy server address to connect to Internet, click Enter Proxy or check your browser settings."
    My primary PC is running Windows 7 Home Premium with Svc Pac 1, 64 bit
    My home network is set for DHCP and I do not have a Proxy Server setup but the Web Services setup page is asking for a Proxy Server an Port.
    I have already established a ePrint ID but cannot complete the process until I can get the Printer Web Services setup process to complete.
    Any suggestions?
    This question was solved.
    View Solution.

    HI Adrianf; 
    Hope you are doing well,welcome to the community,  
    I wil take several steps to make sure they are not causing the issue, 
     Try this tool Click here
    I will also set an static ipaddress for my printer and change the DNS servers provided by your ISP to Google DNS servers 
    How to set an static IP address 
    Follow these steps to assign an unchanging static IP address to the product through the Embedded Web Server (EWS).
    Open a new Web browser window.
    Type the IP address located on the Network Configuration Page in the address bar of the Web browser, using http:// to begin the address e.g. http://192.168.0.1  Then press Enter .  The EWS home page for the product opens.
    In the EWS screen, click the Network tab.
    Click Wired (802.3) , and then click the IPv4 Configuration or the IPv6 Configuration tab.
    Click Manual IP . The Manual IP Address box opens.
    In the Manual IP Address box, type an IP address with the same values in the first three sets of digits (subnet values) as the product's IP address (listed on the Network Configuration Page), and a higher value (between 1 and 254) in the fourth set of digits. This creates a static IP address on the same subnet, but outside the Dynamic Host Configuration Protocol (DHCP) range.
    For example, if the product's original IP address is 192.168.0.1 , assign the static IP address to 192.168.0.200 .
    NOTE:
    Do not type the static IP address use as the example. Enter a static IP address based on the IP address for your product. This can be found on network configuration page.
    Enter the Subnet Mask and the Default Gateway settings as they appear on the Network Configuration Page.
    Click OK to save the new settings, and then click Exit or close the browser to exit the EWS.
    While you are here in the IPV4  you can set the DNS servers of google instead of the DNS servers provided by your ISP  just change the option of automaticly select DNS server and use this;
    DNS servers of google are 8.8.8.8 and alternative DNS 8.8.4.4
    Make sure that the operating system is updated, that the routers firware is the lastest. 
    Hope it helps and best of luck; 
    RobertoR
    You can say THANKS by clicking the KUDOS STAR. If my suggestion resolves your issue Mark as a "SOLUTION" this way others can benefit Thanks in Advance!

  • New to Web Services and BPEL - new hands-on introduction available

    If you are new to publishing business logic as a web services, or new to orchestrating web services as BPEL services, then this hands-on will give you a great introduction in taking your fist steps in the SOA world.
    The hands-on script is available here:
    http://otn.oracle.com/formsdesignerj2ee
    It is based on JDeveloper 10.1.3 Preview and the 10.1.3 Preview SOA suite which are both downloadable from OTN.
    It takes about 60 minutes to go through the steps, a little longer if you need to install the software, but even the installation is easy.
    Enjoy your first steps in the SOA world!
    Regards
    Grant Ronald

    bump

  • Problems with using old web service project with new WLS/OEPE install

    I developed a java web service two years ago using WLS 10.3.3 and OEPE. After development I checked the workspace into Subversion including the .metadata directory. The web service was deployed to a production WLS box and is running fine.
    Now I have a new Windows 7 desktop computer. I have installed WLS 10.3.3 and OEPE on my new desktop and am trying to get the web service I wrote two years ago to run locally. When OEPE launches I point the workspace to the workspace project directory (from two yrs ago) that I have just checked out from Subversion. However when the OEPE IDE comes up I have many errors in the java code. Pretty much every java class is flagged with a "cannot be resolved to a type" error.
    Also, when I try to create a new server and domain, I have a problem there. I select "Oracle WebLogic Server 11gR1 PatchSet 2" as the server type, click Next on the wizard, but then on the next window where you select the Domain, the Domain Directory is disabled and will not let me enter a value, and the link to allow you to create a new Domian is not visible.
    Feeling kind of stupid as this should be really simple to do. Am I proceeding correctly by saving off the entire workspace and then trying to use that workspace in the new WLS/OEPE install? Any help would be greatly appreciated.

    Have you tried creating a new workspace, then import the project from your subversion workspace?

  • [Urgent] can not find Web service diagram in new gallery

    New Gallery -> Business Tier -> Web services
    can not find web services diagram item.
    But i read book about 10g there is web services diagram
    my version is 10.1.3.3

    Hi,
    I think the book means the WSDL editor that opens when you click on a WSDL file
    Frank

  • How to flush data from web service to a new page?

    Hi, all.
    I've created a web service that returns some data in xml format. I want to flush that data into a new page. Could anyone help me with this?
    Regards, Sergey.

    Hi,
    Create a portal application using <b>"AbstractPortal Component"</b> fro calling Web service...
    & deploy it in to portal..
    After that create Iview from that PAR file & and assign in to page...
    Regards,
    Senthil K.
    [Points r welcome].

  • Can't setup ePrint and Web Services on my New HP Officejet Pro 8600!

    I just purchased a new HP Officejet Pro 8600. I setup the printer following the setup wizard: my home wireless network work perfectly and the printer prints great. I am now trying to setup ePrint but I get the following error:
    "Cannot connect to the server.
    Check the Internet connection and try again. Or contact your system administrator or the person who set up the printer. If your network requires a proxy server address to connect to Internet, click Enter Proxy or check your browser settings."
    I don't use any server proxy and my OS System is Windows 7 64 bit.
    Someone can help me?

    I just went through this a few days ago.  I had changed internet service providers and thus had a new router.  My hpconnected migrated from hpeprint andkept saying it was not connected to the network and hpconnected status kept saying 'offline'
    This totally worked:
    on hpconnected.com remove your device
    on your printer or from hp printer software on your system 'remove web services'  
    readd webservices, your printer will print the new information with the claim code
    add your device back to hpconnected with the new claim code
    and wah lah....you are connected to your network through webservices
    you will need to create a new hpeprint email as a result
    PS on the set up when it asks for Proxy Settings and you have ATT Uverse these do not exist so just leave the areas blank

  • Get error (There is an error in XML document (3, 4)) when consuming web service HelpDesk_QueryList_Service with New-WebServiceProxy

    Dear all,
    I'm using the powershell cmdlt New-WebServiceProxy to query ITSM incidents. I'm able to get the WSDL definition ..
    $uri='http://pitsm/arsys/WSDL/public/pitsmapp/HPD_IncidentInterface_WS'
    $myitsm=New-WebServiceProxy -Uri $uri -Namespace ITSM -Verbose true
    $auth= New-Object ITSM.AuthenticationInfo
    $cred=get-credential
    $auth.username=$cred.username
    $auth.password= [System.Runtime.InteropServices.marshal]::PtrToStringAuto([System.Runtime.InteropServices.marshal]::SecureStringToBSTR($cred.password))
    $auth.authentication="Domain Authentication"
    $myitsm.AuthenticationInfoValue=$auth
    $myitsm.RequestEncoding =  [System.Text.Encoding]::UTF8
    $tid="INC000002237910"
    $criteria="'Incident Number' = ""$tid"""
    When i'm consuming now the web service i get back an error messages:
    $answer=$myitsm.HelpDesk_QueryList_Service($criteria,0,100)
    Exception calling "HelpDesk_QueryList_Service" with "3" argument(s): "There is an error in XML document (3, 4)."
    At line:1 char:1
    + $answer=$myitsm.HelpDesk_QueryList_Service($criteria,0,100)
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
        + FullyQualifiedErrorId : InvalidOperationException
    Has anybody an idea what could be wrong?
    Any idea how to debug the commandlet New-WebServiceProxy?
    Best Regards
    Chris

    Hello Christian,
     i  know this reply is really late ;) I am actually the author of the blog post mentioned by @AnnaWY, the post she mentioned is in regards of a situation 'where everything' is how it should be. Basically, (i think) sometime administrator, or the
    person who implements ITSM webservices makes an error, hence this script will not run. You will end up with that issue mentioned, in order to fix it, either you should contact the person who is responsible for that service, OR rewrite the wsdl for it yourself.
    It might be a bit problematic, but, it is for sure doable, as in my latest blog post about this issue. 
    I am writing it here, because i also saw this page, while googling for explanation, i guess there are more people who are looking for this so here is the link to the explanation:
    http://wp.me/pAXaY-ht
    I hope that helps !
    Regards,
    Greg

  • IRM / web services / check user rights to the document by login

    Hellow,
    How to check if user can read sealed document?
    Sealing Server can be used to get Classification (Peeking http://download.oracle.com/docs/cd/E21764_01/user.1111/e12326/isvsealedcontent001.htm#DAFHIHIH)
    "The classification is used by the Oracle IRM Desktop to determine whether the *authenticated user* can access the sealed content".
    How can I do the same if i know the login user name?

    Thanks!
    My example
    // get document context id
    var sealedDoc = File.ReadAllBytes(_SealedFileName);
    string contextId;
    using (var srv = new SealingServicesClient())
    srv.ClientCredentials.UserName.UserName = _ContextAdminName;
    srv.ClientCredentials.UserName.Password = _ContextAdminPass;
    var data = srv.Peek(sealedDoc);
    contextId = data.classification.id;
    // get user rights
    string userName = "BillGates";
    AccountRef account = new AccountRef();
    account.uuid = string.Format("urn:user:{0}", userName);
    DocumentRight[] rights;
    using (var srv = new DocumentRightOperationsClient())
    srv.ClientCredentials.UserName.UserName = _ContextAdminName;
    srv.ClientCredentials.UserName.Password = _ContextAdminPass;
    rights = srv.ListRightsByAccount(account);
    // check if user can read
    bool canRead;
    var right = rights.FirstOrDefault(rr => rr.context.uuid == contextId);
    if (right == null)
    return;
    canRead = (right.role.features.FirstOrDefault(ff => ff.id == "oracle.irm.generic.Open") != null);

  • "Unknown error" when adding a page via web services

    I am trying to add a division (a Welcome page) to a section on another welcome page, in order to get a site structure that is one level deeper than what can be built using the iTunes interface. I am using Web Services, which is new to me, to try to do this, as I understand that web services allows this (see http://discussions.apple.com/thread.jspa?messageID=6786261&#6786261). I have build a login page that takes my institutional name and password, authenticates me, constructs the authorization token, requests, and successfully receives an upload URL from iTunes U.
    It sets the action on a file upload form to this received URL. I then, easily within 90 seconds, browse to the Web Services XML file I want to upload, select it in the file upload form field, and submit the form.
    Despite several change to my Web Services document, the text "Unknown error" is all I ever receive back, and my division is not added. Can anyone help?
    An the HTML output of the dynamically constructed page with the upload form, and the web services document I am trying to upload, may be found at:
    http://itc.boisestate.edu/iTunesU.zip
    Thanks,
    Eric Orton

    It's probably due to the unescaped ampersand in your division name. To be well-formed XML, it must be written as "&" (and, 'a', 'm', 'p', semicolon). In addition, the order of your parameters does not match the XSD. Here's a version that does:
    <ITunesUDocument>
    <Version>1.1</Version>
    <AddDivision>
    <ParentHandle>1525601603</ParentHandle>
    <ParentPath/>
    <TemplateHandle>1525143263</TemplateHandle>
    <Division>
    <Name>Modern Languages & Literature</Name>
    <ShortName>Modern Languages</ShortName>
    <Identifier>langlit</Identifier>
    <AllowSubscription>true</AllowSubscription>
    <Permission>
    <Credential>Authenticated@urn:mace:itunesu.com:sites:boisestate.edu</Credential>
    <Access>No Access</Access>
    </Permission>
    </Division>
    </AddDivision>
    </ITunesUDocument>

  • Web Services Manager Control, SOA Suite, Retrieving Roles from OID

    I am a bit confused about mapping of groups and privileges when it comes to the LDAP (in my case oracle internet directory, OID) and groups defined by Web Services Manager Control.
    I am using Web Services Manager Control->Manage Policies to define a gateway (or agent) for my web services. Through      
    Policy Management > Manage Policies > Policies > Policy
    I have also defined some pipeline steps which require authorization by an LDAP provider.(OID)
    I need two things:
    - First I have such roles and groups here in Web Services Manager:
    Administration > Groups / Roles
    Group Name      Role Name      
    su1-grp      Super User      
    da1-grp      Domain Administrator      
    ca1-grp      Component Administrator      
    ca2-grp      Component Administrator      
    which could be set for view and modification of web services. What is the relation between these groups and user groups in Oracle Internet Directory which I authorize against?
    - Second, my web services are invoked from pages which access to them involves authentication and authorization against OID. I need the username/password to be propagated to the webservice automatically. If the web service is presented as a button on such pages, for example, I don't want the user to be forced to enter username/passwords for each call to the services/
    I appreciate any comments or reference to books and documents.
    Thank you in advance.
    Best Regards,
    Farbod

    Hi Farbod
    Your problem is not new and i have posted in couple of other threads before.
    Roles in OID are for you to authorize the web service message itself. In your case when the user logins to your web application and calls the web service, you have to do two things:
    a) Extract Credentials
    b) AUthenticate against LDAP
    c) Perform authorization against LDAP
    Now the trick part is, you have to have the same username and password. You have to capture and store in session( ugly ugly..from security point of view) and then when you call the web service, you then invoke with the username and password.
    There are other better options available but might require additonal work or infrastructure.
    If your web application is protected by Oracle Access Manager or siteminder, you can pass those cookies.
    Next option is using SAML. You can generate SAML token on behalf of the user, and attach the SAML token to the web service messsage. In OWSM you then configure to validate SAML token and then you have to write custom step to extract the user name and perform any authorization.
    Since anyway you have to write custom step, third option is you can send encrypted cookie ( You web application can create a login session cookie -encrypted after the user signed in ). In OWSM you can write custom step to decrypt the cookie and then perform any validation.
    You have the easiest option of sending the same username and password with a security risk, or a custom development approach.
    Thanks
    Ram

  • OIA Web Services - Create a Role

    I was looking through the API guide for OIA here:
    http://download.oracle.com/docs/cd/E24179_01/doc.1111/e23366/toc.htm
    I realized that there is no web service to create a role or policy (no policy methods at all). Am I missing something? Shouldn't this be one of the most basic functions? There is a call to create a user and you can read all the role and business unit information that you need but nothing is there to create a role. Can someone confirm this and possibly point me in the right direction if I did want to create a role programatically?

    Hi,
    It's because the role and policies require versioning through the workflows where as the ther OOTB API's are either queries, simple updates against 1 or more tables, or don't require OIA's workflow engine
    Regards,
    Daniel

  • Old client - new web service

    Hi,
    i try to migrate our old web services from axis 1.2 to a jboss web service under jbossws - native with jaxws.
    the client send a string to the web service and the return value is also a string.
    the old web service is rpc/encoded and the client was generated bei the axis tools.
    with a few changes i can use my old client to the new web service.
    but i didnt understand why i can use a rpc/encoded client to a jaxws web service using doc/lit.
    so my questions are :
    a) why is a jaxws web service able to read an soap-request with rpc/encoded? i thougth it is forbidden by the ws-i
    b) i also hear there could be interoperability problems with rpc/encoded. why it don´t affect my web service?
    we have a lot of serviceuser so it would be good if they can use their old clients.
    best regards
    Chris

    Their old web service exposed the WSDL through a .asmx file.  The new web service exposes the WSDL though a .svc file.
    That would mean that the older service was written using ASP.net web services and the newer one was written using WCF.
    That's ok to me, I wanted to move up to the .NET SOAP engine anyway.
    That's still likely to be a problem.  That's because the .Net SOAP engine that Classic uses is base on ASP.Net.  WCF implements a lot of web services standards that ASP.Net doesn't know how to handle.  Your best bet for consuming a WCF web service would be the WCF client in PB.Net.
    Problem #2: The .NET SOAP engine seems to have a problem passing some array data.
    You might try upgrading to 12.5.2  There have been continuous improvements to the .Net SOAP engine since it was first introduced.

Maybe you are looking for

  • Tried to update, now in Recovery Mode?

    this morning I tried to update my iPod Touch 4th generation to whatever the newest software is available (I didn't check...). It said I should back up my data before updating, which I did. The update didn't work, and my iPod is now in recovery mode.

  • Sending Details -- URGENT HELP REQUIRED! ! !

    Hi, I have a programming problem which I need urgent help with.... 1.) I firstly have a HTML file which a user will fill out 3 fields on and submit. 2.) A servlet will get these parameters, validate some information and update a database. Problem Par

  • Error message when trying to export iMovie film to iDVD

    It says "unkown error" and that i should check to see if iDVD is installed properly. I think it is. Also, it says check the disk space which I have and is fine and also write permission which I have. It still won't let me export it.

  • Can you put a hyperlink on REPORT.   Column in database has filename or url

    I have a report that returns a column. It is a filename. If I cut and past it into Windows explorer it becomes a URL address. I would like to hover over the row in the database that I want and then either double click (or use a select box, check it a

  • Aperture to mobile me gallery.upload to own server?

    OK so, I know I can export to a file on my desktop, but what I like is the coverflow look that you can show in mobile me. I am assuming this is some scripts that are run on the server side. I would love to be able to run these sites I make on my own