File Adapter in OSB 11g

Hi
I am using a File Adapter created to read a file using OSB 11.1.1.3.0. But after i publish that osb project, i am getting the below warning and file is not been polled by the proxy.
####<Feb 23, 2011 10:08:30 AM IST> <Warning> <JCA_FRAMEWORK_AND_ADAPTER> <wipro-e16351a68> <AdminServer> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <weblogic> <> <dcc2d8a908de630a:59887477:12e50cc23d3:-7ff2-0000000000000084> <1298435910015> <BEA-000000> <PollWork::run exiting, Worker thread will die>
After 600 secs i could see StuckThread error in server.
####<Feb 23, 2011 10:15:01 AM IST> <Error> <WebLogicServer> <wipro-e16351a68> <AdminServer> <[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <dcc2d8a908de630a:59887477:12e50cc23d3:-7ff2-0000000000000092> <1298436301203> <BEA-000337> <[STUCK] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "601" seconds working on the request "weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl@dd20cd", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
     java.lang.Object.wait(Native Method)
     oracle.tip.adapter.file.inbound.FilesToProcess.dequeueToProcess(FilesToProcess.java:101)
     oracle.tip.adapter.file.inbound.ProcessWork.run(ProcessWork.java:269)
     weblogic.work.ContextWrap.run(ContextWrap.java:41)
     weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
     weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
     weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Please help what is going wrong in my approach.
Thanks,
Sesha

I even tired creating a new WM thread and assigned to this proxy.
I have chosen MaxThreadsConstraint option with Maximum of 5 concurrent thread.
Also i have enabled Ignore Stuck Threads in that WM thread.
Now i dont see any thread stuck in the server log, but sametime the file is not been picked by the Proxy which means the error is suppressed alone from displaying in logs..
Thanks,
Sesha

Similar Messages

  • How to use Oracle File Adapter in OSB

    We are trying to use File Adapter in OSB 11g. Is it supported in this version? If yes then some one can specify a document which contains File Adapter - OSB integration steps.

    according to the ESB JCA transport:
    [ESB JCA|http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15866/jca.htm#i1106345]
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15866/jca.htm#i1106345
    there is only these adapters:
    _25.2.1 Adapter Support_
    The Oracle Service Bus JCA transport lets you interact with the following JCA-compliant adapters:
    Oracle Adapter for Oracle Applications
    Oracle JCA Adapter for AQ
    Oracle JCA Adapter for Database
    Oracle JCA Adapter for Files
    Oracle BAM Adapter (Business Activity Monitoring)
    PeopleSoft (Oracle Application Adapters 10g)
    SAP R/3 (Oracle Application Adapters 10g)
    Siebel (Oracle Application Adapters 10g)
    J.D. Edwards (Oracle Application Adapters 10g)
    See the following guides for more information on Oracle adapters:
    I wanna use FTP Adapter and MQ Adapter in Oracle ESB 11.1.1.3, can we make it?

  • File adapter in OSB

    Hi ,
    I am trying to use file adapter in OSB. My intention is the OSB should write a file in a specified location in my sytem. I have configured the Business Service with Messagin service in (general tab), request msg as text and response msg as none in(messagin tab), protocol as file in (transport tab), prefix as AddUser suffix as *.txt* in (file transport tab).
    whenever i give input in proxy service it writing the file at the specified location, but the issue is,it writes the file name as AddUser3225734920456246193--12c3763f.132dd1769a3.-7f5b.txt . i dont need this part(AddUser3225734920456246193--12c3763f.132dd1769a3.-7f5b) in file name which is written. can anyone tell me how i can solve this?
    Any help is appreciated.
    thanks

    Hi,
    We can go with transport JCA FILE for file writing into the specified location.
    Create a file adapter in jdeveloper with all specified things like (file name,physical path location and schema).This creates the jca and wsdl file in jdevloper copy this to eclipse(OEPE) and later u can create business service based on jca file in eclipse.Or else in osb sbconsole copy import related jca and wsdl files and create business service based on this.This process wil create file in particular location with name specified in the jca file in particular location.....

  • Setting directory dynamically in File adapter in BPM 11g

    Hi,
    I am using file adapter in BPM 11g for writing perpose. While configuring, it is required to provide the directory location, which can be either physical path or logical. The location where the new file will be stored/saved is written in a text file. I want to fetch the location from that text file and want to store the new file in that particular location at run time. Please help !!!!

    Hi,
    You can dynamically set -among others- the outbound directory and outbound file name for a File Adapter. See: http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10231/adptr_file.htm#CIACICFD. If you need to retrieve the information beforehand from another file, you could use a synchronous read. See: http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10231/adptr_file.htm#BABDCEBE.
    Ronald

  • SOA BAM Adapter for OSB 11g ?

    Hi,
    I would like to find out if SOA 11g BAM adapter is certified for use with OSB 11g. Please let me know if you have information regarding this.
    Thank you

    pls refer
    https://svgonugu.wordpress.com/2011/10/01/using-bam-adapter-in-osb/
    http://docs.oracle.com/cd/E14571_01/doc.1111/e15866/jca.htm

  • High Availability File Adapter in OSB

    If you use the JCA FileAdapter in OSB, it is necessary to use the eis/HAFileAdapter version, to ensure that only one instance of the adapter picks up a file; you must then configure a coordinator, by setting the
    controlDir, inboundDataSource, outboundDataSource, outboundDataSourceLocal, outboundLockTypeForWrite
    parameters.
    controlDir refers to the filesystem, the others to the DB
    This document http://www.oracle.com/technetwork/database/features/availability/maa-soa-assesment-194432.pdf says
    "Database-based mutex and locks are used to coordinate these operations in a File Adapter clustered topology. Other coordinators are available but Oracle recommends using the Oracle Database."
    Using a Oracle Database as coordinator means using RAC, otherwise no HA.
    I wonder if anybody has been successful setting up HAFileAdapter without using a DB?
    If DB is required, I am considering using the good old "native" OSB File Poller, since it doesn't require complicated setup to be run in a cluster... but I don't want to use MFL, I would rather use the XSD-based Native Format. Here comes the second question:
    Is it possible to use the nXSD translator using the OSB Native File Poller - instead of the JCA Adapter?
    Thank you so much for your help - it will be rewarded with "helpful/answered" points .
    pierre

    I wonder if anybody has been successful setting up HAFileAdapter without using a DB?
    I have not tried it but I think there are several options available invlucing writing your own custom mutex. Please find the details in Oracle File and FTP Adapters High Availability Configuration section on this link
    http://download.oracle.com/docs/cd/E14571_01/core.1111/e10106/ha_soa.htm#sthref434
    Is it possible to use the nXSD translator using the OSB Native File Poller - instead of the JCA Adapter?
    When you create a JCA Adapter based Proxy Service to read the files, the nXSD translation happens before the proxy service is invoked. JCA Engine first reads the data, translates using nXSD and then invokes the Proxy with the translated content. (You can verify this easily by creating a JCA based file read service and open the test console for it in sbconsole, it will show you XML request instead of native).
    So you can not read the text content using File Transport of OSB and then calling nXSD directly or calling an nXSD based Proxy Service.
    HOWEVER, you certainly can use file and nXSD in a combination if thats what you want.
    1. Create a Synchronous Read File Adapter with an nXSD created for it
    2. Create a Business Service for that Synchronous Read JCA in OSB
    3. Create a File Transport based service in OSB which will read the content of file and then call the Business Service to again read the content (which will include the translation using nXSD defined in step one to convert the content to XML).
    So basically you will need to read the file twice! Once using File Transport Proxy service (which will take care of polling in cluster) and then using Sync Read JCA based business service(which will do nXSD translation). To reduce the impact of reading the file twice you can use trigger files. File Proxy to read trigger file and and invoke JCA business service to read the actual file for that trigger.
    Another alternative can be to create a similar class as present here(http://blogs.oracle.com/adapters/entry/command_line_tool_for_testing) but instead of writing a file it will just return the translated content. Call this class with native content from the File Transport proxy using a Java Callout to do the translation.

  • Configuring File adapter for OSB

    Hi,
    I wish to process invoice data that will be in the csv file . The structure of the file is as following :
    $H$<<Supplier Name>>,<<Supplier Site>>,<<Invoice Number>>
    $D$<<Line Number>> ,<<Business Unit>>,<<Location>>,<<Store Name>>
    $D$<<Line Number>> ,<<Business Unit>>,<<Location>>,<<Store Name>>
    $H$<<Supplier Name>>,<<Supplier Site>>,<<Invoice Number>>
    $D$<<Line Number>> ,<<Business Unit>>,<<Location>>,<<Store Name>>
    $D$<<Line Number>> ,<<Business Unit>>,<<Location>>,<<Store Name>>
    The intent is to configure the file adapter in such a fashion that it rejects the entire invoice if there are any errors in any of the lines that belong to that invoice. The invoices that follow the erred inovice should be processed normally. How do I configure the adapter to achieve this? Any help is greatly appreciated.

    Hi,
    Configuring the adapter for rejecting the invalid invoice rows is not possible. Adapter should be configured as usual to read all the rows. Once the rows are read, you can have all validation in the proxy service. If you find any invalid rows, you can write those rows to a saperate file so that it can be corrected and fed again. And all the other valid rows can be sent for further processing.
    Thanks,
    Vishwa

  • Problem with File Adapter in OSb

    Hi All,
    I have a scenario where I need to read 2 data files based on a trigger file.Ex: ABC.TRG file should poll ABC1.DATA and ABC.2 DATA files from the same directory.If by any chance,If the second data file is not read, I need to rollback the first one also.I just need to pass only metadata of my .DATA files.I am able to do one .TRG file and one .DATA file in OSB. But I am struck with processing 2 different DATA files and one TRG file.I have tried like this:Using read operation I created a proxy service and in my message flow ,using service callout I tried to get metadata of  .DATA files (I used synchread  for this JCA) .But when I use service callout, I was not able to get metadata of my .DATA files.
    Any help would be appreciated.
    Thanks,
    PK.

    Can you try this :
    <getWidgetsResponse>
              <getWidgetsResult>           
    for $widget in $yourwidgetresponseelement/widgets/widget
    return
    <widget>
    <widgetnumber> { data($widget/widgetnumber) }</widgetnumber>
    <widgetclass> { data($widget/widgetclass) }</widgetclass>
    </widget>
              </getWidgetsResult>
    </getWidgetsResponse>
              or change the
              { data($widget/widgetnumber) }</widgetnumber> }
    { data($widget/widgetclass) }</widgetclass> }
    in
              $widget/widgetnumber
                   $widget/widgetclass
    Good luc.
    havent tested it, but should be something like this

  • Base64Binary OSB and File Adapter Issue

    Hi all,
    I am converting an xml to flat file after that i want to write the flatfile to a file using File Adapter in OSB.
    So using java callout we converted the binary content to base64 string and we are able to write the data using file adapter .
    But the file contains as extra line in between each line which my legacy system wont accept.
    I printed the base64 string in the output file and when i decode that file using the website as safe decode as text i am able to get the correct file.
    So where is the problem ? File Adapter ? Why i am getting extrace line in between each line . How to write safely using file adapter.
    If i use file transport of OSB i am able to write without any issues but i want to write dynamic location so i am looking for file transport of OSB.
    Thanks
    Phani

    Hi Anju,
    Thanks for the response . If i decode the base64 binary data using this website if i use Notepad++ i cant see an extra line in the notepad++ it showing as below
    Its a fixed length file 1 to 513 then next line so for the file transport it showing as below
    ISA ............................
    1 to 513 CRLF
    For file adapter it is showing as below in the same notepad++ editor
    ISA..........................
    1 to 513 CR
    CRLF
    an extra CR so an extra line .
    I used MFL and converted the xml to non-xml ( flat file fixed length file) for file transport i am i created another proxy message type Text .It is working fine
    Added to the above problem i have another few questions on the file transport
    How can append to an exiting file using File transport ?
    How to change the File directory dynamically ?

  • FTP Adapter on OSB - how to specify logical directory path

    I am using the ftp adapter on osb 11g (Oracle Service Bus Version: [Oracle Service Bus Server Side Dependencies 11.1 Thu Aug 19 02:10:08 PDT 2010 ] Oracle Weblogic Server Version: [WebLogic Server 10.3.4.0 Fri Dec 17 20:47:33 PST 2010 1384255 ])
    I defined the ftp adapter using jdev and imported the jca artifacts into osb.
    I created a business service using jca adapter to put the file to the ftp server.
    The problem is the write directory on the ftp server is different for each environment - DEV, QA, PROD.
    I used a physical directory specification when defining the adapter in JDEV because it wasn't clear from the help how i would override a logical directory during deployment to osb (it is clear if deploying to soa suite).
    Is there a way to override this dynamically override this directory at runtime. Or even better a way to override during deployment time?

    You do it either way....
    Import the SBConfig jar into the sbconsole and change the value in the JCA file
    or
    Re: Customizing JCA FTP Adapter properties in OSB

  • When will OSB 11G avaliable ?

    Our client decide to use 11g BPEL manager running on WLS. And we hope can use OSB (currently 10.3) as the proxy of BPEL Service .
    The thing is the BPEL transport n OSB 10.3 seems not support BPEL 11G (the format of Endpoint URI changed in 11G)and we have some asynchronous BPEL processes need to be integrated .
    Any solution for that ?
    Thanks
    Kevin

    You are correct, the BPEL transport in 10.3.x only supports 10.1.3.x BPEL.
    However you can communicate via other adapters, e.g. web service, JMS, etc.
    As an interim use OSB 10.3.1 and use a transport of your choice, Web Service is probably best. The when 11g arrives it is just a matter of changing the business service the resat of the process should remain in tact. Obviously there will be an upgrade exercise for OSB but unless you are facing major performance issues there should be no rush to do this.
    Basically I believe you are looking at the right architecture and shouldn't be swayed because there is no 11g BPEL adapter.
    OSB 11g should be out some time next year, so it is some time away.
    cheers
    James

  • Using DB Adapter for MS SQL Server 2005  SP in OSB 11g.

    Hi All,
    I have a requirement to create a DB Adapter for MS SQL Server Stored Procedure in JDeveloper and export the Adapter file to OSB 11g. I have Created the Adapter and imported it into OSB 11g successfully. Created the Datasource and Connection pool also in console.
    The problem is while trying to execute the created business Service, I am getting the error as below,
    <Oct 26, 2012 12:20:25 PM IST> <Error> <JCATransport> <BEA-381967> <Invoke JCA outbound service failed with application error, exception: com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/Test/CheckAppID/WL_Driver/CheckAppId_WL_Driver [ CheckAppId_WL_Driver_ptt::CheckAppId_WL_Driver(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'CheckAppId_WL_Driver' failed due to: Unimplemented string conversion.
    Conversion of JDBC type to String is not supported.
    An attempt was made to convert a Java object to String using an unsupported JDBC type: .
    ; nested exception is:
         BINDING.JCA-11804
    Unimplemented string conversion.
    My XSD is ,
    <element name="InputParameters">
    <complexType>
    <sequence>
    <element name="application_id" type="int" db:index="1" db:type="INT" minOccurs="0" nillable="true"/>
    </sequence>
    </complexType>
    </element>
    <element name="OutputParameters">
    <complexType>
    <sequence>
    <element name="RowSet0" type="db:RowSet0_RowSet" db:type="RowSet0" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
    <element name="RowSet1" type="db:RowSet1_RowSet" db:type="RowSet1" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
    </sequence>
    </complexType>
    </element>
    <complexType name="RowSet1_RowSet">
    <sequence>
    <element name="RowSet1_Row" minOccurs="0" maxOccurs="unbounded">
    <complexType>
    <sequence>
    <element name="cde" type="int" db:type="INT" minOccurs="0" nillable="true"/>
    <element name="msg" db:type="NVARCHAR" minOccurs="0" nillable="true">
    <simpleType>
    <restriction base="string">
    <maxLength value="255"/>
    </restriction>
    </simpleType>
    </element>
    </sequence>
    </complexType>
    </element>
    </sequence>
    </complexType>
    <complexType name="RowSet0_RowSet">
    <sequence>
    <element name="RowSet0_Row" minOccurs="0" maxOccurs="unbounded">
    <complexType>
    <sequence>
    <element name="aaa" type="boolean" db:type="BIT" minOccurs="0" nillable="true"/>
    <element name="bbb" db:type="NVARCHAR" minOccurs="0" nillable="true">
    <simpleType>
    <restriction base="string">
    <maxLength value="10"/>
    </restriction>
    </simpleType>
    </element>
    </sequence>
    </complexType>
    </element>
    </sequence>
    </complexType>
    I don't know why there is a datatype conversion error.
    Help me in resolving this.
    Regards,
    Nataraj R.

    Hi,
    I believe NVARCHAR is an unsupported type...
    The following document lists the supported data types for SQL Server stored procedures and functions... NVARCHAR is not in the list... :-(
    http://docs.oracle.com/cd/E23943_01/integration.1111/e10231/adptr_db.htm#CHDEBEEE
    Hope this helps...
    Cheers,
    Vlad

  • Need Help-SOA 11g File Adapter unable to delete input file and its crashing

    Hi All
    Please find the details below:
    1. We have created a simple SOA composite to Read file from an input directory, archive the file in an archive directory using Inbound File Adapter Read
    and then use Outbound File Adapter Write to move the file to a output directory.
    2. File Adapter needs to delete the file after successful read/retrieval.
    3. We are using the "Use Trigger File" for invoking the file adapter. This is a new feature in SOA 11g
    4. Also we are using the option of reading the file as an attachment as we are not doing any transformation in the composite
    Issue Details_
    1. When the trigger file is put in the input directory for the first time, the File Adapter reads the file, archives it and moves it to the output directory
    2. However it does not delete the input file from the input directory and raises Fatal Exception mentioned below:
    [*2011-01-12T16:55:48.639+05:30] [soa_server1] [WARNING] [] [oracle.soa.adapter] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@19c243d]*
    [userId: <anonymous>] [ecid: 0000IptyLrL9_aY5TrL6ic1DBOS_000009,0] [APP: soa-infra] File Adapter FileAdapterTriggerFilePOC PostProcessor::
    Delete failed, the operation will be retried for max of [0] times
    [2011-01-12T16:55:48.639+05:30] [soa_server1] [WARNING] [] [oracle.soa.adapter] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@19c243d]
    [userId: <anonymous>] [ecid: 0000IptyLrL9_aY5TrL6ic1DBOS_000009,0] [APP: soa-infra] File Adapter FileAdapterTriggerFilePOC [[
    BINDING.JCA-11042
    File deletion failed.
    File deletion failed.
    File : C:\Dibya\AttachmentTest\InputDir\TestFile3.txt could not be deleted.
    Delete the file and restart server. Contact oracle support if error is not fixable.
    If any one has faced similar issues, kindly provide pointers on how to resolve it.
    Regards,
    Dibya

    Hi,
    Using the file adapter, you can poll from multilple locations...
    Keep the following property in your .jca file
    <property name="DirectorySeparator" value="," />
    While giving the path in File Adapter configuration, keep comma and give the next location....then the file will be picked up from the locations you gave....
    Hope this helps...
    Thanks,
    N

  • Read from a config file in File Adapter in SOA Suite 11g

    I want to read from a config file in order to determine whether to archive or delete the file after processing using file adapter in SOA Suite 11g. How do i do that.

    only part i replied on was the part of how to read a file
    but i think in your case you could do the next
    use the sync file adapter to read in the file during your process
    based on this content you set a variable "myOutputDirectory"
    then create a file adapter (write) which will store the file on file system
    http://docs.oracle.com/cd/E23943_01/integration.1111/e10231/adptr_file.htm#CIACICFD
    4.3.2.2.5 Specifying a Dynamic Outbound File Name
    and use that (jca.file.Directory) property to store the file either on the archive location or the delete location

  • OSB Error in deploying a project with jca file adapter

    Hi,
    I am facing an issue where I am getting an error when deploying a service from Eclipse. I am using OSB/SOA 11.1.1.5 2 node cluster. I have an OSB service where I am writing to a file and am using file adapater. I created a composite with file adapter to write a file then imported .jac, .wsdl and composite into eclipse and generated a business service out of .jca file. When I deploy the project from eclipse I am getting the below error and am not able to deploy the project.
    Conflicts found during publish.
    Invalid JCA transport endpoint configuration, exception: javax.resource.ResourceException: Cannot locate Java class oracle.tip.adapter.file.outbound.FileInteractionSpec
    Cannot locate Java class oracle.tip.adapter.file.outbound.FileInteractionSpec
    I have FileAdapter deployed and pointed to OSB manage servers cluster. Here is a snippet of config.xml.
    <app-deployment>
        <name>FileAdapter</name>
        <target>SOA_Cluster,OSB_Cluster</target>
        <module-type>rar</module-type>
        <source-path>/app/oracle/fmw/Oracle_SOA1/soa/connectors/FileAdapter.rar</source-path>
        <deployment-order>321</deployment-order>
        <plan-dir xsi:nil="true"></plan-dir>
        <plan-path>/app/oracle/shared/SOA_Cluster/dp/FileAdapterPlan.xml</plan-path>
        <security-dd-model>DDOnly</security-dd-model>
        <staging-mode>nostage</staging-mode>
      </app-deployment>
    Also inside console -> deployments  -> FileAdapter -> Targets and OSB_Cluster is checked also.
    Here is the .jca file
    <adapter-config name="writeFile" adapter="File Adapter" wsdlLocation="writeFile.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <connection-factory location="eis/HAFileAdapter"/>
      <endpoint-interaction portType="Write_ptt" operation="Write">
        <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec">
          <property name="PhysicalDirectory" value="C:\ORACLE"/>
          <property name="Append" value="false"/>
          <property name="FileNamingConvention" value="a_%SEQ%.doc"/>
          <property name="NumberMessages" value="1"/>
        </interaction-spec>
      </endpoint-interaction>
    </adapter-config>
    Any idea what might be wrong.
    Thanks.

    I already have the fileAdapter JNDI is already configured in console. The error I am getting is during the deployment
    Conflicts found during publish.
    Invalid JCA transport endpoint configuration, exception: javax.resource.ResourceException: Cannot locate Java class oracle.tip.adapter.file.outbound.FileInteractionSpec
    Cannot locate Java class oracle.tip.adapter.file.outbound.FileInteractionSpec
    Thanks

Maybe you are looking for

  • IMac 27" (2009) ATI 4850 driver in Bootcamp 3.1 outdated?

    Hello, I just updated my Windows 7 64 bit installation on my iMac 27" i7. I was not happy to see though that the ATI drivers are old (9.1). I used modified 9.12 drivers before which worked much better, just didn't show 32bit colors, instead only 16bi

  • Need help getting app onto ipod touch

    my computer recently died on me so i've got a lend of my friends laptop at the moment. i authorised the computer to my ipod and then purchased a few apps but it wont let me put the apps i downloaded on my friends laptop (using my account of course) o

  • Vendor security deposit

    Hi gurus, One of our vendor need a security deposit for any future transactions. I was looking for Spl GL ind for vendor for a security deposit in OBYR and FBKP but could not find or Is there any other way around to do this. can any one help Thanks E

  • Exporting keywords and comments?

    Is there a way to export keywords, or comments? Basically my iPhoto library is getting too big and running slow, so what I want to do is move all of the "older" photos onto an external drive and be able to find the pics using a spotlight search, but

  • How do i select nonadjacent range in Microsoft Excel 2007 on Macbook?

    Hello I have 1st generation black Macbook and I am running Microsoft Excel 2007 via VMware Fusion. I am currently taking a class of excel 2007 and I would love to use my Macbook to do assignments, but I have problem selecting nonadjacent range cell,