Why do keyword synonyms get imported as separate keywords?

Hello, and sorry if this question has been asked before (it's my first time in the forums, and I find them rather user-unfriendly).
I'm currently trying to understand keywords & keyword hierarchies.
I have successfully created several keywords that include sub-keywords and synonyms, for example, the top keyword "Location" includes the sub-keyword "Europe", and for that I have entered the synonym "Europa" (German translation for "Europe").
Now, I apply the keyword "Europe" to an image, export the image, and add the exported image to my catalog. And now Lightroom automatically adds "Europa" as a separate keyword to my keyword list. This defeats the whole purpose of keyword hierarchies, since my keyword list will soon be cluttered again, and all the help sites I've browsed so far speak of uncluttered keyword lists.
So, my suspicion is that I'm doing something wrong. But I am lost... can anybody help?
I have checked the option "Write Keywords as Lightroom Hierarchy" when exporting - I thought this would mean that my exported image will contain the same keyword hierarchy and thus there shouldn't be any new keywords added to my list when adding that exported file to my catalog. But it doesn't seem to work...
Any suggestions?
Thanks a lot!

Cornelia-I wrote:
Come on, Brett,
That is no solution to Simone's problems!
She wants the full LR capability of keyword hierarchies plus synonyms on any level. This should work if you export out of LR and back in. Especially if you share such a photo with a different person.
Does your answer mean that LR is incapable of doing that?  That the feature of synonyms just does not work, because LR cannot mark an exported keyword as synonym of another?
Leaving aside the awkward question of WHY one would immediately re-import an exported image - synonyms are intended to work within a given Catalog despite not being present as actual keywords on an image.
So it is not necessary to physically include synonyms either outgoing or incoming, in order for these to operate correctly while you are in the Catalog concerned. Just like Collections, synonyms and keyword nesting are properties of a Catalog; not of an image.
Any image which has a particular real keyword, "hooks into" any associated synonym behaviour automatically - and any hierarchy behaviour also.
Including these "virtual" keywords as REAL keywords on export, means that they ACt as real keywords. For example, these are no longer synonyms, they are now full keywords in their own right - so they will now show in the keywords list.
If you don't require synonyms or implied-hierarchy to be seen OUTSIDE Lightroom then - simply - don't include this in your output.
If you want to pass images on to someone else in a way that maintains all the same full Catalog functions that you have locally; you can select them and Export as Catalog. Or you can provide them with a template Catalog which already contains this structure. When they import your new image with its actual keywords, all the related virtual synonyms and hierarchy will already be there, for them to hook into.

Similar Messages

  • Keyword synonyms created as new keywords on import

    I just exported a large batch of images sized for submission to Alamy.  I had the images that were created by the export, imported back into Lightroom. 
    The problem.  All the keyword synonyms that were exported in the images, created new stand alone keywords in the keyword list - bad.
    I had all my keywords nicely organized into 12 neat groups.  Now I have a couple of hundred top level keywords because of the synonyms.
    Can this be prevented?
    thanks
    bill

    When a keyword is exported in an image, its synonyms are also exported by default.  Sincere there is no industry standard governing synonyms, LR exports them as top-level keywords.   And then when you reimport the exported image, those top-level keywords get added to your catalog.
    You can stop the synonyms from being exported by right-clicking their containing keyword in the Keyword List pane, selecting Edit Keyword Tag, and unchecking Export Synonyms.  Unfortunately, you'll have to do that with each keyword that contains synonyms -- there is no batch editing of keywords.

  • Why can't I get my iphone to import all the email address  when it imports from address book?   It syncs all other info. It make we want to go back to my blackberry

    Why can't I get my iphone to import all the email address  when it imports from address book?   It syncs all other info.
    I tried over and over, there must be something I need to change.
    It make we want to go back to my blackberry

    Usually restoring from backup eliminated the corrupted files. However, sometimes restoring to factory settings/new iPod is required.
    To restore from backup see:
    iOS: How to back up
    To restore to factory settings/new iPod see:
    iTunes: Backing up, updating, and restoring iOS software

  • HT201269 why can I not get my photos and videos stored on my iphone to import to my new Ipad Air?

    Why can I not get my photos and videos stored on my iPhone to import onto my new iPad Air ?

    We don't know how to answer because we don't know what you are doing.
    I can tell you that you cannot connect the two devices together to transfer content. And videos do not work in Photo Stream, but it does work for photos. However, you can only stream photos to the device after you have enabled photo stream on the iPad. Any photos that were already on the phone - before you turned on Photo Stream -will not sync to the iPad.
    Look at this app for the videos.
    Wireless Transfer App - Share, sync & backup photos, pictures ...

  • Why isn't my last import saving? I can import the pictures from the memory card, but if I close out iPhoto the just "imported photos" are nowhere to be found.  Please help

    Why isn't my last import saving? I can import the pictures from the memory card, but if I close out iPhoto the just "imported photos" are nowhere to be found.  Please help

    Option 1
    Back Up and try rebuild the library: hold down the command and option (or alt) keys while launching iPhoto. Use the resulting dialogue to rebuild. Choose to Rebuild iPhoto Library Database from automatic backup.
    If that fails:
    Option 2
    Download iPhoto Library Manager and use its rebuild function. This will create a new library based on data in the albumdata.xml file. Not everything will be brought over - no slideshows, books or calendars, for instance - but it should get all your albums and keywords back.
    Because this process creates an entirely new library and leaves your old one untouched, it is non-destructive, and if you're not happy with the results you can simply return to your old one. .
    Regards
    TD

  • Keyword - Synonym bug?

    Please could someone confirm whether this is a known bug, or something particular to my set-up...
    My workflow is: shoot RAW, select images, keyword, Edit in Photoshop (TIFF).
    The problem I have is that the keywords I add to the RAW images correctly get embedded in the TIFF file when the file is created as a result of "Edit in Photoshop", except that the synonyms do not.  i.e. After I open the image in PShop I can see all the keywords (including parents where I have requested them to be shown) but no synonyms!!!
    I'm using latest release of LR/PShop on Vista 64.
    Any help would be appreciated as I am not looking forward to having to hunt for all keywords containing synonyms and creating/applying dedicated keywords for the synonyms (kind of defeats the point of synonyms!).
    Thanks!

    Personally, I think your approach is the correct one; once a file is generated it should have all the keywords embedded. However, LR's approach is at least consistent. The RAW file doesn't have the synonyms either until it is exported in some way. When you open the RAW directly into PS without going through LR the synonyms aren't embedded.
    I think Adobe has taken the approach that LR manages the keywords until you export the final product for use elsewhere. You wouldn't need to re-import the TIFF since it is already in LR with its synonyms. It's just that they aren't embedded at that point.
    I would raise this issue with Adobe by filing it as either a bug report or a feature request at http://www.adobe.com/cfusion/mmform/index.cfm?name=wishform

  • Why can I no longer import EDITED photo from my iPad to my Mac using Image Capture from Snapseed app?

    Why can I no longer import EDITED photo from my iPad to my Mac using Image Capture? This is farcical and a real problem having to email them individually to myself and is totally inefficient time wise compared to previously using image capture! Why change this when it was working well and very quickly until the latest change. Now I have to move files from downloads into an appropriate folder, after emailing each individual edited image to myself, then I have to open in Photoshop and rename the file. This is ludicrous and takes forever to do!

    Thank you! I suppected it would be in the settings somewhere. I' ve much to learn...get myself into trouble pushing buttons I don't really understand.

  • Why can I no longer import Mp4r files from my desktop (Macbook Pro) to iTunes??

    Why can I no longer import Mp4r files from my desktop (Macbook Pro) into Itunes?  Seemed to work perfectly well before the latest upgrade.  Feeling quite annoyed, especially when all the forums seem to give the same advice, which no longer seems to work!!  Please can someone help!  Uploading a file should not be this difficult!!!

    Make sure you have the Quicktime Player 7 installed.  It was an option when installing Lion.  Or you can get it here: QuickTime Player 7 for Mac OS X v10.6.3 or later.  Install it, reboot and try again.
    OT

  • Getting import error in jsp in creating war project of masthead for portal 7.31

    Hi,
    I am getting error in customize masthead war project in jsp for import statement.
    <%@ page import="com.sapportals.htmlb.*"%>
    <%@ page import="com.sapportals.htmlb.hovermenu.*"%>
    <%@ page import="com.sap.security.api.UMFactory"%>
    <%@ page import="com.sapportals.portal.prt.service.license.ILicenseService"%>
    <%@ taglib uri="prt:taglib:tlhtmlb" prefix="hbj"%>
    I have asked basis team for jar relative to these but they have not found in system.
    We are using portal 7.31 version.
    Kindly help me to remove this error from jsp.
    Thanks in advance.

    Hi Hemendra,
    At first i have done this and after that even i was facing error that's why i created this thread.
    Kindly check my first post for error.
    Getting import error in jsp in creating war project of masthead for portal 7.31
    This question is Not Answered.(Mark as assumed answered)
    Swati Joshi  Apr 29, 2015 12:34 PM  
    Hi,
    I am getting error in customize masthead war project in jsp for import statement.
    <%@ page import="com.sapportals.htmlb.*"%>
    <%@ page import="com.sapportals.htmlb.hovermenu.*"%>
    <%@ page import="com.sap.security.api.UMFactory"%>
    <%@ page import="com.sapportals.portal.prt.service.license.ILicenseService"%>
    <%@ taglib uri="prt:taglib:tlhtmlb" prefix="hbj"%>
    I have asked basis team for jar relative to these but they have not found in system.
    We are using portal 7.31 version.
    Kindly help me to remove this error from jsp.
    Thanks in advance.

  • Why do I still get class or interface expected error????

    I made sure I closed all the bracket, why do i still get the error.
    Please help
    * ShopCartServletHW3.java
    * Created on November 19, 2007, 5:42 PM
    package ITI;
    import java.io.*;
    import java.net.*;
    import java.lang.*;
    import java.util.*;
    import java.text.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    * @author Administrator
    * @version
    public class ShopCartServletHW3 extends HttpServlet {
        /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
         * @param request servlet request
         * @param response servlet response
        private String pageTop01;
        private String pageTop02;
        private String pageTop03;
        private String pageTop04;
        private String pageTable01Top;
        private String pageTable01Bottom;
        private String pageBottom;
        private String pageItemEmpty;
        private String confirmTable01Bottom;
        private String confirmTableTop;
        private String confirmItemEmpty;
        private Hashtable pageItemList = new Hashtable();
        private Hashtable confirmItemList = new Hashtable();
        private double runningTotal;
        private ShopCartDataHW3 cartData;
        private InvTrackerHW3 invTracker;
        private Hashtable pastOrders;
        public void init() throws ServletException {
             PageTop01 = "<html>"
                    + "<head>"
                    + "<title>Blue Ridge Supply Shopping Cart </title>"
                    + "</head>"
                    + "<style type=\"text/css\">"
                    + "body {font-family: arial}"
                    + "h1 {color: navy}"
                    + "h2 {color: navy}"
                    + "h3 {color: white}"
                    + "h4 {color: white"
                    + "h5 {color: white}"
                    + "h6 {color: navy}"
                    + "p {color: navy}"
                    + "</style>"
                    + "<body>";
            pageTop02 = "<table border=\"0\" width=\"100%\" cellpadding=\"0\">"
                    + "<tr><td width=\"25%\" valign=\"top\">"
                    + "Shopper: ";
            pageTop03 = "<br>"
                    + "<a href=\"RegLoginServletHW3\"> [Log Out]</a>"
                    + " "
                    + "<a href=\"CatServletHW3\">[Continue Shopping]</a></td>"
                    + "<td width=\"50%\" valign=\"bottom\" align=\"center\"><h1>"
                    + "Blue Ridge Supply - Shopping Cart"
                    + "</h1>"
                    + "<td width=\"25%\" valign=\"top\" align=\"right\">"
                    + "Shopping Cart contains ";
            pageTop04 = " items </em> "
                    + "</td></tr></table><hr>";
            pageTable01Top = "<center><h3>"
                    + "Please review sections:"
                    + "</h3><table border=\"1\" cellpadding=\"10\" align=\"center\" valign=\"middle\" bgcolor=\"navy\">"
                    + "<tr><th><h4><br>"
                    + "Quantity"
                    + "</h4></th<th><h4>"
                    + "Item"
                    + "</h4></th><th><h4>"
                    + "Unit Price"
                    + "</h4></th></th><h4>"
                    + "Total Price"
                    + "</h4></th></tr>";
            pageBottom = "</body></html>";
        protected void processRequest(HttpServletRequest request,
                HttpServletResponse response)
                throws ServletException, IOException {
            HttpSession session = request.getSession();
            if (session.isNew() || session == null) {
                sessionError( request, response);
            String userID;
            if (session.getAttribute("userID") != null) {
                userID = (String)session.getAttribute("userID");
            } else {
                sessionError( request, response);
                userID = "";
            Integer cartCount;
            if (session.getAttribute("cartCount") != null)
                cartCount = (Integer)session.getAttribute("cartCount");
            } else {
                sessionError( request, response);
                cartCount = Integer.valueOf(0);
            if (session.getAttribute("pastOrders") != null)
                pastOrders = (Hashtable)
                session.getAttribute("pastOrders");
                } else {
                sessionError( request, response);
                pastOrders = new Hashtable();
            if (session.getAttribute("invTracker") != null)
                invTracker = (InvTrackerHW3)
               session.getAttribute("invTracker");
            String shiptoname;
            String streetaddress;
            String city;
            String state;
            String zip;
            String shipservice;
            String cctype;
            String ccname;
            String ccnum;
            String ccexpmonth;
            String ccexpyear;
            // Shipping information
            Hashtable shipHash;
            if ((session.getAttribute("shipping") != null))
                shipHash = ((Hashtable)session.getAttribute("shipping"));
            } else {
                shipHash = new Hashtable();
            String [] shipping = new String[5];
            if (shipHash.get(userID) != null)  {
                shipping = (String[])shipHash.get(userID);
                shiptoname = shipping[0];
                streetaddress = shipping[1];
                city = shipping[2];
                state = shipping[3];
                zip = shipping[4];
            } else {
                shiptoname = "";
                streetaddress = "";
                city = "";
                state = "";
                zip = "";
            if ((session.getAttribute("shiptoname") != null)) {
            shiptoname = filter((String) session.getAttribute("shiptoname"))
            // Credit information
            if ((session.getAttribute("shipservice") != null)) {
                shipservice = filter((String) session.getAttribute("shipservice"));
            } else {
                shipservice = "";
            if ((session.getAttribute("ccname") != null)) {
                ccname = filter((String) session.getAttribute("ccname"));
            } else {
                ccname = "";     
            if ((session.getAttribute("cctype") != null)) {
                cctype = filter((String) session.getAttribute("cctype"));
            } else {
                cctype = "";
            if ((session.getAttribute("ccnum") != null)) {
                ccnum = filter((String)session.getAttribute("ccnum"));
            } else {
                ccnum = "";
            if ((session.getAttribute("ccexpmonth") != null)) {
                ccexpmonth = filter((String) session.getAttribute("ccexpmonth"));
            } else {
                ccexpmonth = "";
            if ((session.getAttribute("ccexpyear") != null)) {
                ccexpyear = filter((String) session.getAttribute("ccexpyear"));
            } else {
                ccexpyear = "";
            if (session.getAttribute("cart") != null && session.getAttribute("cartKeys") != null)
                cartData = new ShopCartDataHW3((Hashtable) session.getAttribute("cart"), (Hashtable)
                session.getAttribute("cartKeys"));
            else {
                cartData = new ShopCartDataHW3(new Hashtable(), new Hashtable());
            String itemToAdd;
            itemToAdd = (findItemAttribute(request, response));
            if ((itemToAdd != null) && (cartData.getItemID(itemToAdd) == null)) {
                cartData.updateItemID(itemToAdd, 1);
            if (itemToAdd != null) {
                int defaultValue = (cartData.getQty(itemToAdd).intValue());
                int x = getIntParameter(request, itemToAdd, defaultValue);
                if (x < 0) {
                    // do nothing
                } else {
                    cartData.updateItemID(itemToAdd, x);
           Hashtable cart = new Hashtable(cartData.getCart());
           Hashtable cartKeys = new Hashtable (cartData.getCartKeys());
           session.setAttribute("cart", cart);
           session.setAttribute("cartKeys", cartKeys);
           Integer numberOfKeys = new Integer (cartKeys.size());
           session.setAttribute("cartCount", numberOfKeys);
           runningTotal = 0;
           Enumeration keyValues = cartKeys.elements();
           while(keyValues.hasMoreElements()) {
               String key = (String) keyValues.nextElement();
               if (key != null) {
                   setCartPage(key, cartData);
                   setConfirmItemList(key, cartData);
           if (numberOfKeys.intValue() == 0) {
               setCartPage(null, cartData);
           String shippingAndCredit = loadShippingAndCredit(shiptoname, streetaddress, city, state, zip, shipservice, cctype, ccname, ccnum, ccexpmonth, ccexpyear);
           if (numberOfKeys.intValue() == 0) {
               session.setAttribute("confirm", "");
           } else {
               setConfirm(session, cartKeys, numberOfKeys);
           showPage(request, response, userID, cartKeys, numberOfKeys, shippingAndCredit);
        private void showPage(HttpServletRequest request,
                HttpServletResponse response, String userId, Hashtable cartKeys, Integer numberOfKeys, String shippingAndCredit)
                throws ServletException, IOException {
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            out.println(pageTop01 + pageTop02 + userID + pageTop03 + numberOfKeys + pageTop04);
            out.println(shippingAndCredit);
            out.println(pageTable01Top);
            Enumeration keyValues = cartKeys.elements();
            while(keyValues.hasMoreElements()) {
                String key = (String)keyValues.nextElement();
                if (key != null) {
                    out.println(pageItemList.get(key));
            if (numberOfKeys.intValue() == 0) {
                out.println(pageItemEmpty);
            out.println(pageTable01Bottom + pageBottom);
            out.close();
        private String findItemAttribute(HttpServletRequest request,
                HttpServletResponse response)
                throws ServletException, IOException {
            Enumeration paramNames = request.getParameterNames();
            while(paramNames.hasMoreElements()) {
                String paramName = (String) paramNames.nextElement();
                CatalogHW3 item = new CatalogHW3();
                if (item.getItem(paramName) != null) {
                    return paramName;
            return null;
        private void setCartPage(String key, ShopCartDataHW3 cartData) {
            String pageItemFormat00 = "<form action=\"ShopCartServletHW3\" method=\"post\"><tr bgcolor=\"white\"><td align=\"center\">"
                    + "<input type=\text\" name=\"";
            String pageItemFormat01 = "\" value=\"";
            String pageItemFormat02 = "\" size=\"3\" align=\"right\">"
                    + "<input type=\"submit\" name=\"Update\" value=\"Update\" />"
                    + "<br>";
            String pageItemFormat03 = "</td><td><img src=\"";
            String pageItemFormat04 = "\" align=\"middle\" width=\"48\" height=\"48\"> ";
            String pageItemFormat05 = "</td><td align=\"right\">";
            String pageItemFormat06 = "</td><td align=\"right\">";
            String pageItemFormat07 = "</td></tr></form>";
            DecimalFormat f = new DecimalFormat();
            if (key != null)  {
                int qtyOnHand = invTracker.getQtyOnHand(key);
                int qtyAvailable = qtyOnHand - cartData.getQty(key).intValue();
                if (qtyAvailable < 0) {
                    cartData.updateItemID(key, invTracker.getQtyOnHand(key));
                    qtyAvailable = 0;
                double total = ((cartData.getQty(key).intValue() * cartData.getCost(key)));
                pageItemList.put(key,          pageItemFormat00
                + cartData.getItemID(key)
                                             + pageItemFormat01
                + cartData.getQty(key)
                                             + pageItemFormat02
                + qtyAvaliable + " More Avaliable "
                                             + pageItemFormat03
                + cartData.getImagePath(key)
                                             + pageItemFormat04
                + cartData.getDescription(key)
                                             + pageItemFormat05
                + "$" + f.format(cartData.getCost(key))
                                             + pageItemFormat06
                + "$" + f.format(total)
                                             + pageItemFormat07);
                runningTotal = total + runningTotal;
            } else {
                pageItemEmpty = "<tr bgcolor=\"white\"><td colspan=\"4\" align=\"center\">"
                        + "Your Shopping Cart is empty ... Please buy something."
                        + "</td></tr>";
                runningTotal = 0;
            pageTable01Bottom = "<tr><td colspan=\"4\" align=\"Right\"><h4> Total Order: $ "
                    + f.format(runningTotal)
                    + "</h4></td></tr></table>";
    private void setConfirmItemList(String key, ShopCartDataHW3 cartData) {
        confirmTableTop = "<center><h3>"
                + "Order Details"
                + "<table border=\"1\" cellpadding=\"10\" align=\"center\" valign=\"middle\">"
                + "<tr><th><h4><br>"
                    + "Quantity"
                    + "</h4></th<th><h4>"
                    + "Item"
                    + "</h4></th><th><h4>"
                    + "Unit Price"
                    + "</h4></th></th><h4>"
                    + "Total Price"
                    + "</h4></th></tr>";
        String confirmItemFormat00 = "<tr bgcolor=\"white\"><td align=\"center\">";
        String confirmItemFormat01 = "<td align=\"right\">";
        String confirmItemFormat02 = "</td><td>";
        String confirmItemFormat03 = "<img src =\"";
        String confirmItemFormat04 = "\" align=\"middle\" width=\"48\" height=\"48\"> ";
        String confirmItemFormat05 = "</td><td align=\"right\">";
        String confirmItemFormat06 = "</td><td align=\right\">";
        String confirmItemFormat07 = "</td></tr>";
        DecimalFormat f = new DecimalFormat();
        if (key != null) {
            double total = ((cartData.getQty(key).intValue() * cartData.getCost(key)));
            confirmItemList.put(key,
                                              confirmItemFormat01
                + cartData.getQty(key)
                                             + confirmItemFormat02
                                             + confirmItemFormat03
                + cartData.getImagePath(key)
                                             + confirmItemFormat04
                + cartData.getDescription(key)
                                             + confirmItemFormat05
                + "$" + f.format(cartData.getCost(key))
                                             + confirmItemFormat06
                + "$" + f.format(total)
                                             + confirmItemFormat07);
        confirmTable01Bottom = "<tr><td colspan=\"4\" align=\"Right\"><h4>TOTAL ORDER: $ "
                + f.format(runningTotal)
                + "</h4></td></tr></table>";
    private void setConfirm(HttpSession session,
            Hashtable cartKeys, Integer numberOfKeys)
            throws ServletException, IOException {
        StringBuffer confirm = new StringBuffer(confirmTableTop);
        Enumeration keyValues = cartKeys.elements();
        while(keyValues.hasMoreElements()) {
            String key = (String)keyValues.nextElement();
            if (key != null) {
                confirm.append((String)
                confirmItemList.get(key));
        if (key != null) {
            confirm.append((String)
            confirmItemList.get(key));
    confirm.append(confirmTable01Bottom);
    session.setAttribute("confirm", confirm.toString());
    private String loadShippingAndCredit(String shiptonmae, String streetaddress, String city, String state, String zip, String shipservice, String cctype, String ccname, String ccnum, String ccexpmonth, String ccexyear) {
        String credit01;
        String credit02;
        String credit03;
        String ship01;
        String ship02;
        String ship03;
        String ship04;
        String ship05;
        String ship06;
        credit01 = "<form action=\"PurchConfServletHW3\" method=\"post\">"
                + "<table border=\"1\" cellpadding=\"10\" bgcolor=\"navy\" align\"center\">";
        ship01  =   "<center><h3>"
                + "Please provide your billing and shipping information: "
                + "<input type=\"submit\" name=\"Submit Order\" value=\"Submit Order\" />"
                + "</h3></hr>";
        String
        bill01  = "<tr><td bgcolor=\"white\">"
                + "Card Type:"
                + "<br>"
                + "<select name=\"cctype\">"
                + "<option value=\"Visa\" selected=\"selected\"> Visa</option>"
                + "<option value=\"MasterCard\" selected=\"selected\"> MasterCard</option>"
                + "<option value=\"American Express\" selected=\"selected\">American Express</option>"
                + "</select><br>"
                + "Card Number:"
                + "<br>"
                + "<input type=\"text\" name=\"ccnum\" value=\"";
      credit02  = "\"><br>"
                + "Cardholder Name:"
              + "<br>"
              + "<input type=\"text\" name=\"ccname\" value=\"";
      credit03  = "\"><br>"
                + "Expiration Date:"
              + "<br>"
              + "<select name=\"ccexpmonth\">"
              + "<option value=\"Jan\">Jan</option>"
              + "<option value=\"Feb\">Feb</option>"
              + "<option value=\"Mar\">Mar</option>"
              + "<option value=\"Apr\">Apr</option>"
              + "<option value=\"May\">May</option>"
              + "<option value=\"Jun\">Jun</option>"
              + "<option value=\"Jul\">Jul</option>"
              + "<option value=\"Aug\">Aug</option>"
              + "<option value=\"Sep\">Sep</option>"
              + "<option value=\"Oct\">Oct</option>"
              + "<option value=\"Nov\">Nov</option>"
              + "<option value=\"Dec\">Dec</option>"
              + "</select>"
              + "</td>";
      String
      ship00  = "<td bgcolor=\"white\">"
              + "Ship To Name:"
              + "<br>"
              + "<input type=\"text\" name=\"shiptoname\" size=\"37\" value=\"";
      ship02  = "\"<br>"
              + "Street Address:"
              + "<br>"
              +  + "<input type=\"text\" name=\"streetaddress\" size=\"37\" value=\"";
      ship03  = "\"<br>"
              + "City State Zip:"
              + "<br>"
              + "<input type=\"text\" name=\"city\" size=\"20\" value=\"";
      ship04  = "\">"
              + "<input type=\"text\" name=\"state\" size=\"2\" value=\"";
      ship05  = "\">"
              + "<input type=\"text\" name=\"zip\" size=\"5\" value=\"";
      ship06  = "\"</td>";
      String
      ship00a = "<td bgcolor=\"white\">"
              + "<input type=\"radio\" checked=\"checked\" name=\"shipservice\" value=\"UPS Ground\">UPS Ground"
              + "<br><br>"
              + "<input type=\"radio\"  name=\"shipservice\" value=\"UPS 2nd Day Air\">UPS 2nd Day Air"
              + "<br><br>"
              + "<input type=\"radio\"  name=\"shipservice\" value=\"FedEx Priority\">FedEx Priority"
              + "<br><br>"
              + "<input type=\"radio\"  name=\"shipservice\" value=\"FedEx Ultra\">FedEx Ultra"
              + "</td>";
      String
      ship00c = "</tr>"
              + "</table></form>";
      return credit01
              + ship01
              + bill01
              + ccnum
              + credit02
              + ccname
              + credit03
              + ship00
              + shiptoname
              + ship02
              + ship03
              + streetaddress
              + city
              + ship04
              + state
              + ship05
              + zip
              + ship06
              + ship00a
              + ship00c;
    private void sessionError(HttpServletRequest request,
            HttpServletResponse response)
            throws ServletException, IOException {
        String sessionErrorForm;
        sessionErrorForm = "<form action=\"RegLoginServletHW3\" method=\"post\"><tr bgcolor=\"white\"> <td align=\"center\">"
                + "<h3 align=\"center\">Your request has not been processed - some isseues were found. <br> Please return to the Login page. </h3>"
                + "<input type=\"submit\" name=\"Go to Login\" value=\"Go to Login\" /></form>";
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        out.println(pageTop01 + sessionErrorForm);
        out.close();
    private String filter(String input) {
        StringBuffer filter = new StringBuffer(input.length());
        char c;
        for(int i=0; i<input.length(); i++) {
            c = input.charAt(i);
            if (c == '<') {
                filtered.append("<");
            } else if ( c == '>') {
                filtered.append(">");
            } else if ( c == '"') {
                filtered.append(""");
            } else if (c == '&') {
                filtered.append("&");
            } else {
                filtered.append(c);
        return(filtered.toString());
    private int getIntParameter(HttpSevletRequest request,
            String paramName,
            int defaultValue) {
        String paramString = request.getParameter(paramName);
        int paramValue;
        try {
            paraValue = Integer.parseInt(paramString);
        } catch (NumberFormatException nfe) { // null or bad format
            paramValue = defaultValue;
        return(paramValue);
    //<editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** Handles the HTTP <code>GET</code>method.
    * @param request servlet request
    * @param response servlet response
    protected void doGet(HttpServletRequest request,
            HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    /** Handles the HTTP <code>POST</code>method.
    * @param request servlet request
    * @param response servlet response
    protected void doPost(HttpServletRequest request,
            HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    /** Returns a short description of the servlet.
    public String getServletInfo() {
        return "Short description";
    // </editor-fold>
    }

    When you have errors, you should post them.
    I got 72 errors when I tried to compile the code you posted. Many of them are due to syntax errors like { and } not lining up.

  • Workflow problems: Import selection, 9 keywords in list?, Exporting image attributes...

    I have a few problems incorporating Lightroom into my work flow.
    Is there a way to:
    Select recursive directories when importing photos from disk without
    a copy. Currently, I can only choose files directory(folder) by
    directory.
    Get more than 9 keywords in a shortcut list.
    Add photos from a previously accessed CF card to a catalog in a short
    time.
    Currently it takes about the same time as loading a card from scratch.
    Export image attributes to text file
    (filename followed by keywords, rating...)
    Basic principles of my work flow:
    1. Flash card is used until contents roughly matches the archive media
    size.
    This means a 1GB card fills to 700MB after deleting rejects, and
    a 4GB card will easily fit on a DVD.
    2. Photos on card are categorized and rated/rejected/deleted one or more
    more times while the card is being filled. This results in:
    -Copies of retained images to the categorized directory structure on the
    computer.
    -Rejects deleted from card, and not appearing on the computer
    -Category, and rating information for each image in an easily parsed
    list.
    3. Post processing is done and printing is done on highest rated images
    in each category.
    For example:
    Day 1: start with a blank 4GB CF card, and shoot 1.5GB for customers A and
    B.
    Customer A has 8 subjects a,b,c,d,e,f,g,h; Customer B has 12
    subjects
    a,g,i,j,k,l,m,n,o,p,q,r. Note that some names for customers A and B
    are the same. That night, I delete rejects off the card down to
    800MB,
    and copy the saved images to the directory structure corresponding
    to each customer on the computer. Then a list is printed out to show
    an image+rating list for each subject. Notes are made for each
    "weak"
    subject, so I know who to focus on in the next day of shooting.
    Note I may have needed to do some minor post processing to determine
    rejects and rating.
    Day 2: I shoot 9 subjects for customer A: a,b,c,d,e,f,g,h,s, and 12
    subjects for customer C: j,m,q,t,u,v,w,x,y,z,aa,bb. Similar culling,
    sorting, and copying is done to Day 1.
    Day N: CF card is full, so contents is written to a DVD, then card is
    erased.
    Day M: Sufficient counts of good images are obtained for Customer A, so
    Final post processing is done, and prints are made.
    My initial experimenting with Lightroom shows it has potential to streamline
    the above work flow, but a few key hurdles have kept me from implementing
    it. I have made some assumptions about the tool in the following description,
    so the best help for me would first to point out what assumptions are incorrect
    It looks like "import from device..." only allows a copy from the CF card.
    A copy would mean once images were rejected in the catalog, it would be
    out of sync. with the CF card. So "import photos from disk..." looks
    to be the only way to accomplish principle 1 above. *[minor problem a]* I saw
    no way to import the information from the CF cart recursively in this
    mode. I had to choose the files in groups one directory (folder) at
    a time. When I imported from device, I could grab the whole CF card,
    even though it did a copy. Note another reason I can't copy the CF card
    to the catalog is that the reject/delete operation would not free-up any
    CF card space for the next shoot.
    Rejecting, rating, and categorizing (with keywords) worked easily with
    Lightroom, but *[minor problem b]* it appears the keyword shortcut list is
    limited to 9 entries. Given customers can have more than 9 subjects,
    it would be useful if this could be expanded, even if I implement some sort
    of keyword hierarchy. I suspect the camera will complain about a bad file
    format if I change any of the files on the CF card, but it looks like
    the sidecar files on the computer disk allows me to "modify" images so
    I can get a correct rating without actu

    Do you mean by batches, or the occasional one-off look see? <br /><br />is this following useful? If so, I can tell you how to get it. <br /><br /><tiff:Orientation>1</tiff:Orientation><br />   <tiff:YCbCrPositioning>1</tiff:YCbCrPositioning><br />   <tiff:XResolution>1800000/10000</tiff:XResolution><br />   <tiff:YResolution>1800000/10000</tiff:YResolution><br />   <tiff:ResolutionUnit>2</tiff:ResolutionUnit><br />   <tiff:Make>Canon</tiff:Make><br />   <tiff:Model>Canon PowerShot S80</tiff:Model><br />   <tiff:ImageWidth>3264</tiff:ImageWidth><br />   <tiff:ImageLength>2448</tiff:ImageLength><br />  </rdf:Description><br />  <rdf:Description rdf:about=""<br />    xmlns:xap="http://ns.adobe.com/xap/1.0/"><br />   <xap:ModifyDate>2008-01-04T15:31:04-08:00</xap:ModifyDate><br />   <xap:CreateDate>2007-10-12T19:37:52-07:00</xap:CreateDate><br />   <xap:MetadataDate>2008-01-04T15:31:04-08:00</xap:MetadataDate><br />   <xap:CreatorTool>Adobe Photoshop CS3 Macintosh</xap:CreatorTool><br />  </rdf:Description><br />  <rdf:Description rdf:about=""<br />    xmlns:exif="http://ns.adobe.com/exif/1.0/"><br />   <exif:ExifVersion>0220</exif:ExifVersion><br />   <exif:FlashpixVersion>0100</exif:FlashpixVersion><br />   <exif:ColorSpace>1</exif:ColorSpace><br />   <exif:CompressedBitsPerPixel>5/1</exif:CompressedBitsPerPixel><br />   <exif:PixelXDimension>3264</exif:PixelXDimension><br />   <exif:PixelYDimension>2448</exif:PixelYDimension><br />   <exif:DateTimeOriginal>2007-10-12T19:37:52-07:00</exif:DateTimeOriginal><br />   <exif:DateTimeDigitized>2007-10-12T19:37:52-07:00</exif:DateTimeDigitized><br />   <exif:ExposureTime>1/400</exif:ExposureTime><br />   <exif:FNumber>8/1</exif:FNumber><br />   <exif:ShutterSpeedValue>8643856/1000000</exif:ShutterSpeedValue><br />   <exif:ApertureValue>6/1</exif:ApertureValue><br />   <exif:ExposureBiasValue>0/3</exif:ExposureBiasValue><br />   <exif:MaxApertureValue>116/32</exif:MaxApertureValue><br />   <exif:MeteringMode>5</exif:MeteringMode><br />   <exif:FocalLength>8564/1000</exif:FocalLength><br />   <exif:FocalPlaneXResolution>3264000/286</exif:FocalPlaneXResolution><br />   <exif:FocalPlaneYResolution>2448000/214</exif:FocalPlaneYResolution><br />   <exif:FocalPlaneResolutionUnit>2</exif:FocalPlaneResolutionUnit><br />   <exif:SensingMethod>2</exif:SensingMethod><br />   <exif:FileSource>3</exif:FileSource><br />   <exif:CustomRendered>0</exif:CustomRendered><br />   <exif:ExposureMode>1</exif:ExposureMode><br />   <exif:WhiteBalance>1</exif:WhiteBalance><br />   <exif:DigitalZoomRatio>3264/3264</exif:DigitalZoomRatio><br />   <exif:SceneCaptureType>0</exif:SceneCaptureType><br />   <exif:Flash rdf:parseType="Resource"><br />    <exif:Fired>False</exif:Fired><br />    <exif:Return>0</exif:Return><br />    <exif:Mode>2</exif:Mode>

  • Moving to Aperture 3 from IDimager - Importing XMP hierarchial keywords

    I am interesting in migrating from IDimager, a Windows application, to a native Mac application. I really like how Aperture 3 functions. But a really big issue is getting my keyword structure from IDimager into Aperture 3.
    I successfully exported the IDimager catalog and imported it into Aperture 3 keywords. The result is my existing hierarchy of keywords is preserved and maintained in Aperture 3. Awesome, so far...
    When I import my images into Aperture 3 however, all nesting is lost. Instead Aperture 3 duplicates all keywords at the top level. This is really disappointing.
    I do not have Lightroom nor Lightroom files to test, but I tried exporting a Lightroom compatible XMP format. No go either. It creates, what I presume to be non-standard, XMP information which does convey the structure of keywords. But I can only assume that Aperture 3 ignores that valuable information.
    Further, there does not seem to be a practical way to fix my keyword structure. The import of the images leaves me with hundreds of top level keywords that not clutter the keyword HUD. Removing those keywords also removes them from the images. So there seems to be no solution other then apply keywords from scratch. My library is not all that big, some 7,000 images, but I make very extensive use of keywords for many different purposes. So images typically have about 10 keywords plus most of their parent keywords. If there is no solution to automate the import, I am sorry to say, but I cannot see how I will be able to switch to Aperture 3.

    IDImager allows for Keywords to be written in hierarchical format. This means each individual keyword includes the parent keywords like this: "Others|Import|2009|2009-02-22". The only debate in my mind is about what will be more time consuming, writing and debugging a script to have exiftool extract the keywords and apply them hierarchical, or doing this task manually.
    From playing with the Aperture trial I deducted that making changes to keywords in the keyword HUD applies these changes to all images. Changing the "fred" keyword to "Freddy" will update all images that have the original "fred" keyword applied.
    We'll see. I am certainly not new to programming but have not used AppleScript before. Am still searching for a comprehensive guide and scripting examples that would help in pulling this off. But as I get closer to having the pre-processing outside of Aperture done for all of my images and very little accomplished in terms of the script I am leaning towards manually fixing my keywords.
    Adi

  • HT201071 why my canon 7d & 70D imported photo all not in RAW format? All in JPEG? Please settle it for me. thank you

    why my canon 7d & 70D imported photo all not in RAW format? All in JPEG? Please settle it for me. thank you

    You should take a look at iView Media or its Pro version. It is a cross-platform (Mac and Windows) program that is free of some of the stultifying limitations of iPhoto. For example, you can create multiple catalogs and you can easily catalog media (not just photos) that are not on the current disk, like media stored on CDs. It has very flexible cataloging features.
    If they have not changed their licensing, you can buy one license to run both the Mac and PC version for one price. You can make one catalog and easily pass it between a Mac and PC with no translation or confusion. This would be much easier than trying to make it work with iPhoto and some other Windows program.
    If you were to go the iView route, you would have to "sync" the data back to the photos so that they carry your keyword etc. data with them to other apps. I don't know if iPhoto embeds that info back to the photos, or if it stays in the iPhoto database only.
    Photoshop Elements 4 is great on Windows, but the Mac version of Elements does not include the cataloging feature because it integrates with iPhoto. I'm not sure how smooth that all works.

  • Why am I only getting regular Photoshop from Creative Cloud???

    Installing Photoshop CS6 on my Mac using Creative Cloud. Photoshop CS6 comes in regular not extended. Isn't extended the version offered? Why am I only getting regular Photoshop???

    Hi Juergen,
    I'll forward your concern to our Product Managers. I understand that it can be frustrating to see features disabled after licensing the product. With the addition of subscription pricing, there's added questions as to what is included with each option. We're working to clearly communicate the offerings but there's more to be done.
    For a little more background, Adobe has always enabled the trial license as Photoshop Extended since it was introduced in CS3. The basic reason being with a single installer, one can try the full range of Photoshop features, then with a serial number enable what's desired. We use other marketing material to try and differentiate the features that are only enabled for the Photoshop Extended version.
    This solution has its problems, and distributing separate installers for Photoshop and Photoshop Extended has other problems.
    My basic cheat sheet after activation looks like this:
    Single installer package for all offerings
    Trial license — Photoshop Extended
    Photoshop Extended (perpetual license) — Photoshop Extended
    Photoshop (perpetual license) — Photoshop
    CS Subscription (Photoshop) — Photoshop
    Creative Cloud Membership — Photoshop Extended
    Creative Suite editions (perpetual license): (http://www.adobe.com/products/photoshop/buying-guide.html)
              Design Standard — Photoshop
              Design and Web Premium — Photoshop Extended
              Production Premium — Photoshop Extended
              Master Collection — Photoshop Extended
    Again, I'm sorry this isn't clearer and you had a bad experience.
    regards,
    steve

  • Importing from iphoto, always get "import failed".

    I am trying to move my pictures from iphoto to elements.
    I "import from files and folders" and choose import from iphoto.
    I have 87,0000 pictures.
    It fails saying "import failed".
    I check the disk, and the files are there but no pictures in the catalog.
    I try to remove the files that it says are damaged.  I have done that.  I still get "import failed" with no report of why.
    I see many other posts with this same issue, and no good solution.
    I tried to create a new catalog, no difference.
    Help!
    Mac OS X
    Elements 12.0
    I have had Elements for the mac for 3 months now and still can't use it!

    I did the "from iPhoto" and got the problem listed above.  I want the whole library transferred.
    I am looking for a solution to the elements defect listed above.  If I import the library, and it has a problem with a single photo, it should not import that photo, but do the rest.  It is not doing that, it is failing and not importing anything.
    This is especially frustrating since it take hours to import the library, then when it is 95% done, it fails and imports nothing.

Maybe you are looking for