ArrayController in non-document based Applications

I just tried to use the ArrayController in an app. The app was not document based. I did everything as you are supposed to do, I made up a class called AppControll, set it Files Owner of the XIB file, connected the contend Array and so on. There were no warnings or errors, the compiler said No Issues, the Build was suchsessfull. But before the window has opened, the Application crashed. On the console was this log:
2011-05-17 16:28:45.652 MyApp[9637:903] An uncaught exception was raised
2011-05-17 16:28:45.656 MyApp[9637:903] [<NSApplication 0x10011b240> valueForUndefinedKey:]: this class is not key value coding-compliant for the key boxArray.
2011-05-17 16:28:45.792 MyApp[9637:903] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<NSApplication 0x10011b240> valueForUndefinedKey:]: this class is not key value coding-compliant for the key boxArray.'
*** Call stack at first throw:
          0   CoreFoundation                      0x00007fff8059a7b4 __exceptionPreprocess + 180
          1   libobjc.A.dylib                     0x00007fff864c30f3 objc_exception_throw + 45
          2   CoreFoundation                      0x00007fff805f2969 -[NSException raise] + 9
          3   Foundation                          0x00007fff867abb8e -[NSObject(NSKeyValueCoding) valueForUndefinedKey:] + 245
          4   Foundation                          0x00007fff866db488 -[NSObject(NSKeyValueCoding) valueForKey:] + 420
          5   AppKit                              0x00007fff8810a384 -[NSApplication(NSScripting) valueForKey:] + 492
          6   Foundation                          0x00007fff866dedcc -[NSObject(NSKeyValueCoding) valueForKeyPath:] + 226
          7   AppKit                              0x00007fff87e9fb6f -[NSBinder valueForBinding:resolveMarkersToPlaceholders:] + 171
          8   AppKit                              0x00007fff88065f80 -[NSArrayDetailBinder _refreshDetailContentInBackground:] + 368
          9   AppKit                              0x00007fff87e92a33 -[NSObject(NSKeyValueBindingCreation) bind:toObject:withKeyPath:options:] + 557
          10  AppKit                              0x00007fff87e6f546 -[NSIBObjectData nibInstantiateWithOwner:topLevelObjects:] + 1172
          11  AppKit                              0x00007fff87e6d88d loadNib + 226
          12  AppKit                              0x00007fff87e6cd9a +[NSBundle(NSNibLoading) _loadNibFile:nameTable:withZone:ownerBundle:] + 248
          13  AppKit                              0x00007fff87e6cbd2 +[NSBundle(NSNibLoading) loadNibNamed:owner:] + 326
          14  AppKit                              0x00007fff87e6a153 NSApplicationMain + 279
          15  MyApp                            0x0000000100001302 main + 34
          16  MyApp                            0x00000001000012d4 start + 52
terminate called after throwing an instance of 'NSException'
The debugger tells me "Programm recieved signal SIGBART"
If I cut the bnding to the contend array, the Applications stats as usual, but it dosent work, because there is no contend array.
Then I tried something else. I made up a new project, this time a document-based one, and did exactly the same as I did before. It worked well and fine the way it should work. There was no problem and the ArrayController worked fine. I don`t think a made mistake writing the name of the array, because I allways copied and pasted the name to the IB. So I would like to know if it is possible to use an ArrayController in a Non-document based Application? What do i have to do differently? The reference about the ArrayController does not mention this. It would be great if you could help me soon, thank you.

No, but actually this was not my Problem But It helped me figure out what the problem is in detail. If you use a document based application, NSDocument can call the subclass NSPersistentDocument. This automatically reads out the model (if you use Core Data. I do`t like Core Data because it`s sometimes a bit strange and it`s hard to hunt down bugs there, but I think basically the problem is the same) and create a managedObjectContext, wich is needed to run the NSArray Controller. The big question is now, how to call something simular to NSPersistentDocument wich is not a subclass ob NSDocument but of NSObject.

Similar Messages

  • Adobe non-Cloud Based Applications Will Not Stay Licensed

    Hi All - been banging my head against the wall on this problem for days.  5 hours with Adobe Chat support has made the problem much worse.  I have InDesign CS6, Photoshop Elements and Premier Elements 12, as well as Acrobat X Standard on my PC.  They are all bought from Adobe on-line, and have worked fine for months.  Suddenly, every few times I launch any of the aforementioned applications the Application Manager pops up and says that the software is in trial mode, and I can either continue in trial mode or enter a serial number.  Entering the number allows the app to run 3-5 times before it again reverts to trial mode and forces me to re-enter (again) the serial number. 
    Endless hours with tech support has gone nowhere.  They all focus on the SLCache folder and making it universally accessible, which it is already, and in any case that was never touched before this started,  A few other file deletions they did only made things worse.  The problem was initially only with InDesign, and now it is on all the apps.
    One last piece of data - all of these applications are upgrades of previous versions that I had.  I have tried uninstalling and re-installing the apps, and even have gone so far as re-installing the older app and then installing the upgrade app.  Same behavior.
    Anyone have any idea what I can do?  This is killing my ability to work.  Thanks.

    Thank you 1949live.  It does look like your case is escalated so a member of our support team will be in contact you via e-mail.  You should have received an update on 1/26/15 discussing this escalation.
    I did review the case notes and I would concur with the suggestion of removing all installed Adobe Creative applications.  All of the referenced applications utilize the same licensing system.  Only with a complete removal can the SLCache and SLStore folders be safely removed.  I would also recommend the use of the CC Cleaner Tool after removal of all Adobe Creative applications and Adobe Acrobat X Standard.  You can find details on the use of the CC Cleaner Tool at Use the CC Cleaner Tool to solve installation problems | CC, CS3-CS6 - http://helpx.adobe.com/creative-suite/kb/cs5-cleaner-tool-installation-problems.html.
    If you need a new copy of the retail installation files they are available at Other downloads.  I reviewed the registered software titles under your account and they are all for retail licenses.
    It wasn't completely clear from the case notes or your post 1949live.  What occurred on the computer prior to this issue occurring?  Was the security software updated or a new security software title installed?  Was a system restore/migration performed?

  • Multiple Windows without Document based project?

    Is there a way to put multiple windows in my web browser without a document based application? I hate document based projects. A regular project is much easier to work with. What makes a Document based application so special anyway? Thanks in advance.

    Well, it gives you documents. You can save and open them. It keeps track of its windows and its own nib files.
    A document-based application might not be appropriate for your program. You can create windows on the fly. It is a bit more work that way. I don't think I've ever done it. Any applications that weren't document-based also had only a specific number of windows that were all defined in the nib file.
    What do you hate about document-based projects? You don't have to use them. Just keep an open mind and come back later and try them again. It took me a couple of tries before I got the hang of core data. Document-based applications might make more sense the next time around.

  • Stand alone vs. Browser based application

    Can someone please tell me what are the pro's and con's of a browser based application specially for an XML authoring tool.
    Here are some of the advantages I found for non-browser application:
    1. We have a flexible submittal process, since the user can launch the application anytime.
    2. Once launched, user can work offline. When done, user can again connect to the network and save the document to a repository.
    3. We will have a better look and feel for our authoring tool, since it is not constrained within the browser area.
    Let me know your thoughts and ideas.
    null

    Can someone please tell me what are the pro's and con's of a browser based application specially for an XML authoring tool.
    Here are some of the advantages I found for non-browser application:
    1. We have a flexible submittal process, since the user can launch the application anytime.
    2. Once launched, user can work offline. When done, user can again connect to the network and save the document to a repository.
    3. We will have a better look and feel for our authoring tool, since it is not constrained within the browser area.
    Let me know your thoughts and ideas.
    null

  • Session Facade and Access to a Non SQL Based Persistent Data Store

    Hi,
    We are currently using jDeveloper 10.1.3.5 and Oracle Application Server 10.1.3.5. We develop all our applications as Java portlets using Oracle PDK and they are exposed through Oracle Portal.
    In our environment, the persistent data is stored on a combination of an Oracle database and a non SQL based persistent data store.
    The way we access the non SQL persistent data store is by posting a URL and receiving an XML document back in response. This mechanism is used both for enquiry and update of the persistent store.
    We have to create a new XML schema for each entity that we need to access and there are software changes on both our environment (Java) and the non SQL based persistent data store.
    In an attempt to shorten development times we are looking to start using ADF faces and EJB3.
    We have downloaded the SRDemo tutorial and made it work but there are some challenges.
    1. The SRDemo seem to have a very minimal implementation of a business layer. From what I can see, it is essentially some straightforward wiring between database attributes and their viewable representation. Is there a demo/tutorial containing a bit more meat in the business layer that you are aware of?
    2. Given our non SQL based persistent data store, how would you go about implementing EJB3 for such scenario. Is it recommended at all? How would you go about integrating the rest of the application (business layer and representation layer) to data arriving from such source?
    3. SRDemo is not intended to be exposed as a portlet. Is there a tutorial that we can use incorporating JSR168, ADF Faces and EJB3 in the same application? I also understand that there is a JSF-JSR168 bridge available. Can you provide some pointers here? Where can we find it? Would we be able to use it in jDeveloper 10.1.3.5?
    Regards

    Matt,
    The only way to associate an "x-axis" with a signal in the Write Data VI would be to feed it waveforms, which are constrained to use time as the x-axis unit. There is really no way around this, so in my opinion, the best solution for you would be to use the "rows are channels" conversion and write the frequency and amplitude values to the file independently. Then when you read the file in DIAdem, take the two channels and build a graph out of them there.
    Regards,
    E. Sulzer
    Applications Engineer
    National Instruments
    E. Sulzer
    Applications Engineer
    National Instruments

  • How to integrate web based application to windows based application

    Hi,
    Experts,
    we developed web based application in this when we raising
    invoice document after adding this we need to updated Amount
    in integratee SAP B1 then that Amount we need Update The
    Amount  in OACT Table  how we can Update in Amount Field
    in OACT Particular Account Code. plz Guide  me. and how to
    integrate web absed application to windowbased application
    plz help me.
    Regds,
    Samapth.

    Dear sampathdevunuri kumar,
    You may develop the addon based on SDK DIServer for required function.
    The DI Server is an extension of the DI API and supports all its objects. It is intended for high-volume data integration, where numerous client connections must be managed simultaneously and optimized for speed. It is also suitable where Web-services architecture is preferred.
    Please refer to SDK help and SDK DIServer sample for more information.
    Best Regards
    Jane Jing
    SAP Business One Forums team

  • Authentication between Single Sign-On and Web based applications

    Hi everyone,
    I need to create a way in Portal 10g (10.1.2.0.2) that allow me to do the following:
    Once the user is logged on Portal (against Single Sign-On - SSO) he doesn't need to retype his username/password when he access a web based application throught the portal, in my case, an ASP application (not .NET, just ASP).
    I made a test creating a External Application in SSO and after publishing this portlet (external application) inside portal.
    It worked, BUT I was prompted to inform username/password to log on the aplication.
    So, the user end up entering his password twice.
    Does anybody know a way to acomplish this task?
    The documentation I'm researching is:
    Oracle Application Server Single Sign-On
    Administrator's Guide
    10g Release 2 (10.1.2)
    B14078-02
    Oracle Application Server Single Sign-On
    Security Guide
    10g Release 2 (10.1.2)
    B13999-03
    Thank you very much,
    Diogo Santos.

    have figured out how to secure any HTML, ASP, PHP, CFM, etc. web page again Portal / OID using the PDK toolkit.
    Using AJAX (Asynchronous JavaScript and XML) and one Oracle Stored Procedure just adding a simple Javascript call to any HTML, ASP, PHP, etc. web page can secure it via Oracle SSO (OID). Access to any secured web page will require that it to be linked from an authenticated Portal session or a page opened in an authenticated Portal session.
    This process can be easily modified to add in group security etc. This is just my starting point.
    1) Create a stored procedure
    # Make sure it has access to portal.wwctx_api.is_logged_on
    CREATE OR REPLACE PROCEDURE login_ajax_check (
    display_error IN number default NULL) AS
    BEGIN NULL;
    If portal.wwctx_api.is_logged_on = false then
    htp.prn('DENY');
    ELSE
    htp.prn('ALLOW');
    END IF;
    Exception when others then htp.p('DENY');
    END;
    2) Use this Javascript in any page you wish to secure.
    <-- Begin Paste Here -->
    <script>
    var allowgo=2
    function ajaxCallRemotePage(url)
    if (window.XMLHttpRequest)
    // Non-IE browsers
    req = new XMLHttpRequest();
    req.onreadystatechange = processStateChange;
    req.open("GET", url, false);
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
    req.send(null);
    else if (window.ActiveXObject)
    // IE
    req = new ActiveXObject("Msxml2.XMLHTTP");
    req.onreadystatechange = processStateChange;
    req.open("GET", url, false);
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
    req.send();
    else
    return; // Navigateur non compatible
    // process the return of the "ajaxCallRemotePage"
    function CheckPortal()
    ajaxCallRemotePage('[Your page calling the procedure from above]');
    function processStateChange()
    if (req.readyState == 4)
    if (req.status == 200)
    if (req.responseText.substring(0,4) == 'ALLO')
    allowgo = 0;
    else
    allowgo = 1;
    function doPage()
    if (allowgo==1)
    window.location='[Your login or error page]';
    CheckPortal();
    doPage();
    </script>
    <-- End Paste Here -->
    That's it!!! Super easy. It works great too.
    Larry Schenavar
    [email protected]

  • "SSO" for non-sap web application using SAPGUI to browse?

    I have a web application (non SAP) and the user base are also SAP users in an ABAP system.
    To strengthen the authentication in the web app, I wanted to implement SSO 
    authentication as we pity the users for having to remember so many strong pw's and I
    dont like LDAP based pw sync or other technology I dont understand, because then we are
    just yet another application with the same pw...
    We are having technical problems implementing SSO on the web app side, and are anyway a
    bit sceptical about the user admin / role admin assignment if we get it to work.
    So I have created a transaction in SAP which browses the web app and the intention is to
    send the SAP sy-uname as the web app user. We can control this using s_tcode, and
    an own auth object on the WAS side and a check on the session type before the connection is
    established. In this sense we are dependent on the SAP concept implemented, but even so:
    The role assignment is controlled in the web app itself -> so assume that I am not overly
    worried about unauthorized access to the web application, as they would not have any
    system role for it as their sy-uname does not exist. (Infact we can monitor this)
    The browser on the front end is the SAPGUI with html controls on the SAP side.
    I would be interested in knowing whether anyone else has experience with this approach, and
    whether there are any areas to be carefull of?
    I would also like to know whether this is a strategic error?
    Kind regards,
    Julius

    Hi Julius,
    well, if that web application would run on the same ABAP backend system then the solution described in <a href="http://service.sap.com/~iron/fm/011000358700000431401997E/0612670">SAP Note 612670</a> would be applicable:
    a so-called "Re-entrance ticket" (based on the "SAP logon ticket" SSO proceedings) is issued, transported via the SAPGUI connection and back to the system via the invoked HTML control.
    But for non-SAP web applications that does not help.
    In that case only X.509 client certificates can be used for SSO. Actually, the web application could then also be invoked directly (independent from the SAPGUI session). The user is authenticated based on the X.509 client certificate - and not based on the ABAP userID (of the SAPGUI session).
    Well, if you don't mind the effort you could also use the "SAP Logon Ticket evaluation library" (sapssoext, see <a href="http://service.sap.com/~iron/fm/011000358700000431401997E/0304450">SAP Note 304450</a>) to evalute the SAP logon ticket externally. You'll then need to have a "stub application" at the ABAP side that triggers the http redirect to your external web application. Not a nice solution but a possible one.
    In the future SAML browser artifacts would be an option (preferable to integrate non-SAP applications). But currently that's not available (for NWAS ABAP).
    Cheers, Wolfgang

  • Table View in View-based Application

    Hi.
    I want to use an UITableView in a View-based Application.
    All examples I found are for Navigation-based Applications.
    I Found only one example for View-based Applications, but it create all components himself without the Interface-Builder.
    I search an example with Interface-Builder.
    My main problem is, when i create a view with Interface-Builder, the controller class does not inherit from UITableViewController.

    GrinderFX wrote:
    I want to use an UITableView in a View-based Application.
    Hi, and welcome to the Dev Forum!
    Firstly, I would point out that you don't need to use UITableViewController to control a table view. The table view controller is just more convenient. So for example, you could simply drag a table view from the library in IB and drop it onto your view. Then you could hook up the table view's dataSource and delegate outlets to the File's Owner. Then you would add the data source and delegate protocols to the @interface of your UIViewController subclass and add the required data source and delegate methods to the @implementation.
    I mention the above because building your table view that way is very instructive. If you want to learn more about table views in general I would recommend Chapter 8 of +Beginning iPhone Development: Exploring the iPhone SDK by Mark and LaMarche+, which includes 3 table view projects that don't involve a navigation controller.
    My main problem is, when i create a view with Interface-Builder, the controller class does not inherit from UITableViewController.
    Returning to your specific question, IB allows you to change the class of an object. Here are the steps to use the View-Based Application template as you described (In the following I'm using Grinder as the name of the project; e.g. the app delegate class is named GrinderAppDelegate, and the view controller subclass is named GrinderViewController):
    1) _Change parent of view controller subclass in your code_
    In GrinderViewController.h, you only need to change the superclass from UIViewController to UITableViewController:
    @interface GrinderViewController : UITableViewController {
    However it will be easier later on if you make new files from the UITableViewController file template:
    a) Ctrl-click on GVC.h and GVC.m in the Groups & Files tree; select Delete->Also Move to Trash;
    b) Ctrl-click on Classes; select Add->New File->iPhone OS->Cocoa Touch Classes;
    c) Select UITableViewController subclass from the right center panel and click Next;
    d) File Name: GrinderViewController.m; check Also create GrinderViewController.h;
    e) Make sure the name for these new files is exactly the same as the ones you deleted; if you make a mistake here, delete the new files and start over, because that name must be the same in several other files;
    f) Click Finish; the replacement files should now appear under Classes.
    2) _Change the view controller class in IB_
    a) Double click on MainWindow.xib under Resources in the Groups & Files tree;
    b) Make sure the MainWindow.xib window is open by selecting Window->Document from the IB menu;
    c) Locate the View Mode switch, upper-left, in the xib window, and select the Center position;
    d) The xib window should now be displaying two columns with small icons on the left;
    e) Select the Grinder View Controller icon;
    f) Select Edit-Delete to delete that icon;
    g) Select Tools->Library from the menu, and expand Controllers in the Library Panel;
    h) Drag a Table View Controller to the xib window and drop it right under the app delegate icon;
    i) Select Tools->Identity Inspector from the menu to open the Grinder View Controller Identity Panel (the new Table View Controller should still be selected in the xib window);
    j) Under Class Identity, select Grinder View Controller from the list; tab out of the Class field to be sure the selection is recorded;
    k) Ctrl-Click on Grinder App Delegate and connect the view controller outlet (ctrl-drag) to Grinder View Controller;
    l) Expand GVC in the xib window and delete the Table View icon (since we want it in the other xib file);
    m) Reselect the GVC icon and open the Grinder View Controller Attributes panel;
    n) Under View Controller, select GrinderViewController from the NIB Name list;
    o) In the Table View Controller IB Editor window, select GrinderViewController.nib to open the other xib file;
    p) Make sure the GrinderViewController.xib window is open in small icon mode as in steps b-d above;
    q) The class of the File's Owner should be GrinderViewController;
    r) Delete the View icon;
    s) Drag a Table View from the Library to where the View icon was;
    t) Ctrl-click on File's Owner and connect (ctrl-drag) it's view outlet to the Table View;
    u) Ctrl-click on Table View: connect both the dataSource and delegate outlets to File's Owner;
    v) File->Save both xib files.
    3) _Make some rows in the table view and test_
    a) Open GrinderViewController.m in Xcode;
    b) Add the commented lines (be sure to use the correct line for your target OS);
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 20; // <-- change to more than zero
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
    // Configure the cell
    // add this line for OS 2.x
    cell.text = [NSString stringWithFormat:@"Row %d", indexPath.row];
    // add this line for OS 3.0
    // cell.textLabel.text = [NSString stringWithFormat:@"Row %d", indexPath.row];
    return cell;
    c) Build and Go.
    I should add that the procedure might be a little easier if you start with the Window-Based Application Template. But the above is good practice in editing xib files.
    Hope that's helpful!
    - Ray

  • Front End for BW 3.5 and Java based application

    We are trying to connect two systems; SAP based (through BW) and Non-SAP based (Sybase, Java based) applications. We are exploring BI Java SDK with UDDI or XI services to bring Non-SAP data to NetWeaver. We don't want to store all data from sybase to BW. We could use Front end of BW or any other GUI from SAP Portal. I have heard options like UI, GUI machine, net weaver developer studio, visual composer. Ideally, we would like to combine non-sap and sap data in Business explorer/BW web browser but any other front end suggestion within Net weaver frame work will help us keep our cost down. Please advise.
    Thanks.
    Vinay Karna

    We're in the middle of upgrading from 3.1 SP 22 BW w/6.20 SAPGUI. We've only upgraded a sandbox BW server at this point, but we have upgraded all BW team members with SAPGUI 6.40 FEP 5 and can successfully connect to our 3.5 and 3.1 BWs.

  • After creating a searchable database I am unable to search documents based off of the bates number.

    I just finished creating a searchable database in Adobe Acrobat Pro and it finds documents based off of search terms fine. It does not however locate documents based off of the Bates number that I am using as a search term. Why won't it let me do this?

    Hi Dodu.NET,
    Please refer the Kb Doc : http://helpx.adobe.com/creative-suite/kb/error-exit-6-exit-7.html.
    Please see Troubleshoot with install logs | CS5, CS5.5, CS6 - http://helpx.adobe.com/creative-suite/kb/troubleshoot-install-logs-cs5-cs5.html for information on how to review your installation logs
    In addition you cna try these steps :
    > Enable the hidden Admin Account on Windows 7 ( Ref :  http://www.howtogeek.com/howto/windows-vista/enable-the-hidden-administrator-account-on-wi ndows-vista/ )
    > Disable all Non-Microsoft Startup Services. (Ref : http://helpx.adobe.com/x-productkb/global/disable-startup-items-services-windows.html )
    > Disable all the Antivirus softwares like CA, Norton,Mc Afee etc. temporarily from the computer.
    Reboot and try installing in the new enabled Admin user account and check.

  • Problems with location based applications

    I am having problems with all of my location based applications i.e. none of them work. It seems I can never be located by the GPS no matter where i am and i just get a permanently spinning wheel. I have deleted and reloaded the Apps (although even with the generic Maps App i cannot be located) and i have reset the phone Reset iPhone (but havent Reset Settings or Restored yet). I love my iPhone but this is very frustrating. Can someone please help ?

    Didn't work unfortunately. My Location Services were On so i proceeded to Restore. All went ok on the Restore but i still have the same problem. I have 4 App's that are location based and none of them work. Your suggestion ? Thanks for your help.

  • Control on non service based IV

    Good Day Gurus!
    We have POs with Item Cat D which are non service-based IV since we are not using service master/entry.
    During ammendment of service line, PO line item amount can be decreased since entry of negative value in service lines is allowed which makes PO line item amount in some cases, less than invoiced amount.
    Is there a standard functionality to control this or should it be addressed via business process(credit memo, etc.). Thanks!

    Hi,
    The Invoice is not the basis for the PO values to be updated; the                             
    system provides the flexibility of invoicing higher than the PO value.                         
    The invoices raised however can be seen in the PO. Currently there are                         
    no plans to change this functionality as it is a part of the core, any                         
    change here could affect existing functionality of other users.                                                                               
    For your particular case a possible way is to set up a 3 way match with                        
    the GR non evaluated flag checked. This way the actual value is                                
    validated and the system would not allow the value to be changed                         
    below the actual value.                                                                               
    The process followed for a 2 way match differs from that of a 3 way                            
    match. The 3 way match process updates the PO based on the GR document.                        
    The system does not take the invoice document to update the PO, as it is                       
    possible to create an invoice for any amount. Due to this the program                         
    is not designed update the actual value in the PO to reflect the                               
    expensed amount.                                                                               
    This design is a part of the standard; there are no plans to change this                       
    design. There is no possible solution to validate the 2                       
    way match process as the invoice cannot be the basis to update the PO.
    Please also refer the attached note 457511 regarding PO changes. 
    Regards,
    Edit

  • Client/server socket based application

    hi does anyone have example of client/server socket based application using Spring and Maven
    where application do the following
    Client sends a request with a path to any file on the server
    „h Server reads the file and responds back with the content
    „h Client outputs the content to the console
    am trying to follow this
    http://www2.sys-con.com/itsg/virtualcd/java/archives/0205/dibella/index.html
    http://syntx.io/a-client-server-application-using-socket-programming-in-java/
    am using java 6

    i have attempt code but i wht to do the following
    client/server socket based application that will read the content of a file and stream the content of the file to the client. The client must simply output the content of the file to the console using System.out. The client must be able to run in a standalone mode (non-network mode) or in a remote mode.
    Additionally the client must be designed in a way that i can print the output to a console but must be interchangeable where if requirements change i can persist the response to file or persist the response to a database.
    /* Server.java*/
    ///ifgetBoolen= true then...
    import java.io.*;
    import java.net.*;
    import java.util.*;
    import java.sql.*;
    public class Server
        static String array[][];
        // STEP 1 a1  
        // Server socket
        ServerSocket listener;
        // STEP 1 a2 Client connection
        Socket client;
        ObjectInputStream in;
        ObjectOutputStream out;
        public void createConnection() throws IOException
                System.out.println("\nSERVER >>> Waiting for connection.....");
                client = listener.accept();
                String IPAddress = "" + client.getInetAddress();
                DisplayMessage("SERVER >>> Connected to " + IPAddress.substring(1,IPAddress.length()));
          public void runServer()
            // Start listening for client connections
            // STEP 2
            try
                listener = new ServerSocket(12345, 10);
                createConnection();
                  // STEP 3
    //              processConnection();
            catch(IOException ioe)
                DisplayMessage("SERVER >>> Error trying to listen: " + ioe.getMessage());
        private void closeConnection()
            DisplayMessage("SERVER >>> Terminating connections");
            try
                if(out != null && in != null)
                      out.close();
                    in.close();
                    client.close();                
            catch(IOException ioe)
                DisplayMessage("SERVER >>> Closing connections");
        public static void define2DArray(ResultSet RS, int Size)
            try
                ResultSetMetaData RMSD = RS.getMetaData();
                DisplayMessage("SERVER >>> Requested arraySize: " + Size);
                if (RS.next())
                    array = new String[Size][RMSD.getColumnCount()];
                    for (int Row = 0; Row < Size; Row++)
                        for (int Col = 0; Col < RMSD.getColumnCount(); Col++)
                            array[Row][Col] = new String();
                            array[Row][Col] = RS.getString(Col+1);
                            DisplayMessage(array[Row][Col] + " ");
                        RS.next();
                else
                    array = new String[1][1];
                    array[0][0] = "#No Records";
            catch (Exception e)
                DisplayMessage("SERVER >>> Error in defining a 2DArray: " + e.getMessage());  
        public static void DisplayMessage(final String IncomingSMS)
            System.out.println(IncomingSMS);
    //client
    * @author
    import java.io.*;
    import java.net.*;
    import javax.swing.*;
    public class ClientSystem
        static Socket server;
        static ObjectOutputStream out;
        static ObjectInputStream in;
        static String Response[][];
        static boolean IsConnected = false;
        static int Num = 0;
        public static void connectToServer() throws IOException
            server = new Socket("127.0.0.1", 12345);
    //        server = new Socket("000.00.98.00", 12345);
            String IPAddress = "" + server.getInetAddress();
            DisplayMessage("\nCLIENT >>> Connected to " + IPAddress.substring(1,IPAddress.length()));
        public static void getStreams() throws IOException
            out = new ObjectOutputStream(server.getOutputStream());
            out.flush();
              in = new ObjectInputStream(server.getInputStream());
              IsConnected = true;
              DisplayMessage("CLIENT >>> Got I/O streams");  
        public static void runClient()
            try
                connectToServer();
                getStreams();
                  DisplayMessage("CLIENT >>> Connection successfull....\n");
                  DisplayMessage("CLIENT >>> Want to talk to server");
            catch (IOException ioe)
                System.out.print("."+Num);
                Num++;
        public static void closeConnection()
            try
                out.close();
                in.close();
                server.close();  
            catch(IOException error)
                DisplayMessage("CLIENT >>> Could not close connections");
        public static void Start()
            System.out.print("\nCLIENT >>> Attempting connection.....");
            try
                IsConnected = false;
                while (IsConnected == false)
                    runClient();
                    if (IsConnected == false)
                        Thread.sleep(100);
            catch (Exception e)
                DisplayMessage("CLIENT >>> Attempting connection.....");
        public static String sendSMS(String sms)
            Response = new String[0][0];
            try
                DisplayMessage("CLIENT >>> " + sms);
                out.writeObject(sms);
                out.flush();
                Response = (String[][])in.readObject();
                DisplayMessage("CLIENT >>> Waiting for server to respond...");
                for (int Row = 0; Row < Response.length; Row++)
                    System.out.printf( "_SERVER >>> \t");
                    for (int Col = 0; Col < Response[Row].length; Col++)
                        //DisplayMessage( "_SERVER >>> " + Response[Row][Col] + " ");
                        System.out.printf( "%s\t", Response[Row][Col]);
                    System.out.println();
                DisplayMessage("CLIENT >>> Query processed successfully....\n");
            catch(ClassNotFoundException cnfe)
                DisplayMessage("CLIENT >>> Class not found for casting received object");
            catch(IOException ioe)
                reConnect();          
            catch (Exception sqle)
                DisplayMessage("CLIENT >>> Error sending query ??? " + sqle.getMessage());
            return "transmission successfull";
        public static void reConnect()
            try
                DisplayMessage("CLIENT >>> Connection was lost. Trying to reconnect...");
                closeConnection();
                Thread.sleep(100);
                IsConnected = false;
                while (IsConnected == false)
                    runClient();
                    Thread.sleep(200);
            catch (Exception e)
                DisplayMessage("CLIENT >>> Error trying to Re-Connect...");
        public static void DisplayMessage(final String IncomingSms)
            System.out.println(IncomingSms);
        System.out.printf("Isms: %s", IncomingSms);  ///naah.
        public static String[][] getResponse()
            return Response;
        public static String getResponse(int row, int col)
            return Response[row][col];
    how can i do below using above code
    The program must be able to work in a non-networked mode. In this mode, the server and client must run in the same VM and must perform no networking, must not use loopback networking i.e: no “localhost” or “127.0.0.1”, and must not involve the serialization of any objects when communicating between the client and server components.
    The operating mode is selected using the single command line argument that is permitted.
    imust use a socket connection and define a protocol. networking must be entirely bypassed in the non-network mode.

  • Identity SSO API with non-web based appilcations

    hi,
    i can appreciate hwo this works with cookies etc for web based applications that use the api or one of the agents on apache etc.
    but how does it go with non web based java and say windows applications?
    can anyone point me to some docs?
    thanks

    I don't work for Sun but here are my thoughts
    1. Yes, if you don't want to use the AM SDK then the
    XML auth service is the way to go.
    2 & 3. dunno
    4. I think if you pass around the SSOToken ID
    generated by AM then any application can issue a SAML
    query to see if the session is still valid and get
    identity/auth attributes back
    5. I think SAML 2.0 supports authentication and
    single signoff
    6. If you are doing a lot of thick client apps you
    should use kerberos instead of AM web based
    Authentication. AM supports kerberos authentication,
    most modern browsers support SPEGNO for passing
    credentials to web server, AD supports Kerberos, and
    even Solaris 10 comes with a free KDC built into the
    OS. There is plenty of documentation around kerberos
    and the JDK out of the box supports GSS-API for
    Kerberos authenticationThank you for your feedback.
    We looked at the use of kerberos as well, but this is not really an option as we are dealing with fat clients installed on desktops of clients. So these desktops do not fall within our span control (multiple domain controllers etc.).
    Regards,
    Thomas

Maybe you are looking for