Getting jpegs accross rmi

Hi
I need to figure out how to send jpeg images over an rmi connection, and i'm stuck.
I read my image file in at one end using
BufferedImage image = ImageIO.read(new File(file));
then I tried sending this, which it didn't like.
Then I tried serialising this using .getToolkit().sync() but you can't use that on Images...
I then got a pixel array (int []) of the image, and transfered this using rmi (which it liked), but when i turn it back into an image then write it to file, i get an unopenable file... My slightly scruffy code is as follows:
//rmi method called to get the pixel array
public int[] getTheImage(String file) throws RemoteException{
BufferedImage image = null;
try{
image = ImageIO.read(new File(file));
image.getToolkit();
catch (Exception e){
int w = image.getWidth();
int h = image.getHeight();
//turn into an int []
handlepixels(image, w, h);
return pixels;
int [] pixels;
//sets the contents of pixels
public void handlepixels(BufferedImage img, int w, int h) {
int width = w;
pixels = new int[w * h];
PixelGrabber pg = new PixelGrabber(img, 0, 0, w, h, pixels, 0, w);
try {
pg.grabPixels();
} catch (InterruptedException e) {
System.err.println("interrupted waiting for pixels!");
return;
if ((pg.getStatus() & ImageObserver.ABORT) != 0) {
System.err.println("image fetch aborted or errored");
return;
the other end of the code, where pixels is the int[] of pixels, w is the width, h is the height:
MemoryImageSource mis = new MemoryImageSource(w,h,pixels, 0, w);
Toolkit tk = Toolkit.getDefaultToolkit();
Image img = tk.createImage(new MemoryImageSource(w, h, pix, 0, w));
BufferedImage bim = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
bim.getGraphics().drawImage(img, 0, 0, null);
//save the file to local space
try{
System.out.println("writing jpeg");
ImageIO.write (bim, "jpg", new File(file));
Thanks
Emma

Hello,
To my knowledge I have read that images / pictures should be transferred as byte array stream which are serializable. You could try that and see if that works.
Sathish

Similar Messages

  • Getting JPEG Library Error for Corrupt JPEG Data using CS5

    After recently upgrading to CS5 I am getting JPEG Library Errors for corrupt JPEG data. I have my old PC still in use that uses CS4 and does not generate these errors when accessing the same site. Could someone please assist me in how to get rid of these errors using CS5? I can't find help out there anywhere for this!
    Thanks in advance!

    You could use Photoshop's Image Processor to open all of your jpegs in a given folder, make a slight tweek and resave them in the hopes of cleaning out any errors that DW is hitting. It's worth a shot maybe.
    1. In PS go to File > Scripts > Image Processor
    2. For Step 1, browse to a folder in your site with jpeg issues
    3. For Step 2, choose save in same location
    4. For Step 3, choose Save as JPEG and check Convert File to sRGB
    5. Click Run
    This will create a sub folder called JPEG with the images resaved there. You can drag them into the parent folder to replace the originals.
    If you haven't already, make sure to report the bug here: https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform
    At least the right people will be made aware of it then and if it's common enough to trip whatever quantity/user reports system they use, it would get included for repair.
    I honestly don't think it's a "bug" per se, since the forum isn't absolutely flooded with the problem.

  • How do I get jpegs to associate with Photoshop CC 2014?

    I uninstalled PS CC before installing PS 2014.  I have now uninstalled PS 2014 and Bridge and reinstalled.  Bridge associates jpegs with PS 2014 as the default program but anywhere else I can't get them to associate.  I've tried "Open With" and it doesn't give me photoshop as a choice.  I choose browse and go to the executable but it still won't work.  How can I fix this?

    what operating system are you on?

  • Using RAW+JPEG stacking script, but can't get JPEG as default thumbnail for stack. Help!

    I am currently using this script I found elsewhere on Adobe forums. However, doing this function only will stack everything with the raw files on top. I am using a 5D MKIII now and Bridge CS4 can't generate the CR2 previews, so I need JPEGs to see what a file is for general editing. How do I get this stack script to put the JPEGS on top instead of the raw files?
    (script originally posted by Paul Riggot in another forum)
    #target bridge  
       if( BridgeTalk.appName == "bridge" ) { 
    AutoStack = MenuElement.create("command", "Auto Stack", "at the beginning of submenu/Stack", "zx1");
    AutoStack.onSelect = function () {
       stackEm();
    function stackEm(){
    app.document.sorts = [{ name:"name",type:"string", reverse:false}];
    var jpgs = Folder(app.document.presentationPath).getFiles ("*.jpg");
    app.document.deselectAll();
    for(var a in jpgs){
    var Name = decodeURI(jpgs[a].name).replace(/\.[^\.]+$/, '');
    var stacks = Folder(app.document.presentationPath).getFiles(Name+".*");
    if(stacks.length < 2) continue;
    for(var z in stacks){ app.document.select(new Thumbnail(stacks[z]));}
    StackFiles();
    app.document.deselectAll();
    function StackFiles(){
    app.document.chooseMenuItem('submenu/Stack');
    app.document.chooseMenuItem('StackGroup');

    I wonder if you have time if you could test this script for me please?
    What it does (tries to do) is to create JPGs from the raw files in the same folder as the CR2 (raw) files.
    N.B. IT WILL OVERWRITE ANY JPGS IN THE SAME FOLDER IF THE NAMES MATCH!
    So please try it on a folder with raw files only.
    The idea being it might be quicker to generate jpegs from the embedded thumbnail rather than shoot both raw/jpg?
    T.I.A.
    #target bridge  
    if( BridgeTalk.appName == "bridge" ) { 
    AutoStackJpgs = MenuElement.create("command", "Create Stack JPGs", "at the beginning of submenu/Stack", "sj1");
    AutoStackJpgs .onSelect = function () {
    app.document.deselectAll();
    var items = app.document.getSelection("crw,cr2,tiff,raw,rw2,dng,nef,orf,erf,mos,dcr,raf,srf,pef,x3f");
    for (var a =0; a<items.length;a++){
    var JPEG = new File(items[a].path.substr(0,items[a].path.lastIndexOf ('.'))+".jpg");
    tempFile=new File(items[a].path);
    var fileString='';
    tempFile.open('r');
    tempFile.encoding = 'BINARY';
    fileString=tempFile.read();
    tempFile.close();
    for(var w =0;w<6;w++){
    var startJpg=fileString.search(/\xFF\xD8\xFF/);
    if(startJpg != -1){
    if(testJPG()){
    var endJpg = fileString.search(/\xFF\xD9/);
    fileString = fileString.substr(0,endJpg+2);
    JPEG.open('w');
    JPEG.encoding = 'BINARY';
    JPEG.write(fileString);
    JPEG.close();
    var newThumb = new Thumbnail(JPEG);
    newThumb.rotation = items[a].rotation;
    break;
    }else{
    fileString = fileString.substr(20);
    continue;
    function testJPG(){
    var result=false;
    fileString = fileString.substr(startJpg);
    var endTest = fileString.search(/\xFF\xD9/);
    if(endTest > 204800 ? result= true : result= false);
    return result;

  • Problem with get ResultSet from rmi jdbc method. Help.

    Hi,
    I am writing a rmi jdbc server. I got all the rmi methods working, but I am trying to get the data from the ResultSet. After the query, I set the fields in the serialiable class and return it back to the client. However, I noticed that it does called init(), but not the setField calls. When it calls the first setField in the serialiable class, the method is never called. Can anyone give some guidance.
    Thanks,
    Rage
    This method is called from the client to set all the data in the Serialiable class and return it to the client.
    public Collection fetchResultSet() throws RemoteException
    System.out.println("Entering fetchResultSet");
    Collection resultSetColl = new ArrayList();
    QueryResultSet recordset;
    try
    int rowCount = 0;
    ResultSetMetaData rsmd = rs.getMetaData(); // Get data dictionary information
    int columnCount = rsmd.getColumnCount();
    System.out.println("got column count");
    System.out.println("" + rowCount + " rows, " +
    columnCount + " columns");
    if (rs == null) System.out.println("rs is null");
    if (rs.next())
    System.out.println("Parsing RS");
    recordset = new QueryResultSet();
    for (int i = 1; i <= columnCount; i++)
    System.out.println("set Fields = "+ rs.getString(i) );
    //recordset.setField(i,rs.getString(i));
    String strValue = rs.getString(i);
    recordset.setField(i,strValue);
    System.out.println("Added recordset" );
    resultSetColl.add(recordset);
    catch (Exception e)
    System.out.println(e.getMessage());
    closeResultSet();
    return resultSetColl;
    Here is my Serializable Class
    import java.io.*;
    import java.sql.*;
    public class QueryResultSet implements Serializable
    private String Field1;
    private String Field2;
    private String Field3;
    private String Field4;
    private String Field5;
    private String Field6;
    private String Field7;
    private String Field8;
    private String Field9;
    private String Field10;
    private String Field11;
    private String Field12;
    private String Field13;
    /** Creates a new instance of QueryResultSet */
    public QueryResultSet()
    init();
    public void init()
    System.out.println("QueryResultSet INIT()");
    Field1 = "";
    Field2 = "";
    Field3 = "";
    Field4 = "";
    Field5 = "";
    Field6 = "";
    Field7 = "";
    Field8 = "";
    Field9 = "";
    Field10 = "";
    Field11 = "";
    Field12 = "";
    Field13 = "";
    public String getField(int nField)
    System.out.println("QueryResultSet getField()");
    System.out.println("getField 1 = " + Field1);
    if (nField ==1)
    return Field1;
    else if (nField == 2)
    return Field2;
    else if (nField == 3)
    return Field3;
    else if (nField == 4)
    return Field4;
    else if (nField == 5)
    return Field5;
    else if (nField == 6)
    return Field6;
    else if (nField == 7)
    return Field7;
    else if (nField == 8)
    return Field8;
    else if (nField == 9)
    return Field9;
    else if (nField == 10)
    return Field10;
    else if (nField == 11)
    return Field11;
    else if (nField == 12)
    return Field12;
    else if (nField == 13)
    return Field13;
    return null;
    public void setField(int nField, String strField)
    System.out.println("QueryResultSet setField()");
    System.out.println("field #" String.valueOf(nField) " = " + strField);
    if (nField == 1)
    Field1 = strField;
    else if (nField == 2)
    Field2 = strField;
    else if (nField == 3)
    Field3 = strField;
    else if (nField == 4)
    Field4 = strField;
    else if (nField == 5)
    Field5 = strField;
    else if (nField == 6)
    Field6 = strField;
    else if (nField == 7)
    Field7 = strField;
    else if (nField == 8)
    Field8 = strField;
    else if (nField == 9)
    Field9 = strField;
    else if (nField == 10)
    Field10 = strField;
    else if (nField == 11)
    Field11 = strField;
    else if (nField == 12)
    Field12 = strField;
    else if (nField == 13)
    Field13 = strField;
    }

    You need to give us some information more. Like what rdbms are you using, what driver and how are you trying to access the resultset from java.
    I do not know what are you using. One thing I can tell you for sure is that the execute method returns a boolean. If you need a resultset you should run executeQuery.
    Kiros

  • Getting List of RMI Hosts in network

    Hi All,
    We have an application here that uses RMI to start and stop EXEs over the network. So, I have these EXEs lying in different machines in the network. In all these machines, we have RMI servers running. Now, I need to have the list of all the machines in which RMI Servers are running (can we call these RMI Hosts?). So, that I will present the list in a Combo/drop down box and let the user select the machine.
    We have already tested the RMI server and it is working. We are able to start and stop these Exes without any problem. But, we are asking the user to key in the machine name before starting the EXEs. This is what I wish to avoid.
    Is this possible? Can I somehow get the list of all the hosts in the network on which RMI Server is running and then populate it into a combo bos using JSP/Struts? The application is platform independant, so, I cannot use any windows specific functions/apis.
    Cheers,
    Uday

    Your first problem is to define exactly what you mean by 'all the machines in the network'. This probably means all the IP hosts in your subnet, and if you knew your subnet mask you could generate all the possible IP addresses. You could then try to open port 1099 on each of those addresses and the ones where you succeed have an RMI Registry running. However you can't get the subnet mask in Java, so this is out unless you can hardwire it into your code or supply it externally.
    EJP

  • Getting the REmoteExceptionjava.rmi.MarshalException

    Hi
    I am unable to get the results while accessing the web service,
    it is giving the error
    REmoteExceptionjava.rmi.MarshalException: (1)Missing end tag for Body or Envelope
    the error is occuring at
    try {
    resultObj = op.invoke(name);
    } catch (JAXRPCException e) {
    System.out.println("Error Here at Invoke");
    Throwable cause = e.getLinkedCause();
    if (cause instanceof java.rmi.RemoteException) {
    throw (java.rmi.RemoteException) cause;
    any body plz give sol for this problem

    oh, and here's some code and errors if that might help:
    This is the complete exception:
    Running with storage root DefaultColorPhone
    java.rmi.MarshalException: (1)Missing end tag for Body or Envelope
         at com.stubs.TrivialService_Stub.purchase(+75)
         at com.apps.TestClient.startApp(+47)
         at javax.microedition.midlet.MIDletProxy.startApp(+7)
         at com.sun.midp.midlet.Scheduler.schedule(+270)
         at com.sun.midp.main.Main.runLocalClass(+28)
         at com.sun.midp.main.Main.main(+116)
    Execution completed.This is the stubs for the service:
    // This class was generated by 172 StubGenerator.
    // Contents subject to change without notice.
    // @generated
    package com.stubs;
    import javax.xml.rpc.JAXRPCException;
    import javax.xml.namespace.QName;
    import javax.microedition.xml.rpc.Operation;
    import javax.microedition.xml.rpc.Type;
    import javax.microedition.xml.rpc.ComplexType;
    import javax.microedition.xml.rpc.Element;
    public class TrivialService_Stub implements com.stubs.TrivialService, javax.xml.rpc.Stub {
         private String[] _propertyNames;
         private Object[] _propertyValues;
         public TrivialService_Stub() {
              _propertyNames = new String[] {ENDPOINT_ADDRESS_PROPERTY};
              _propertyValues = new Object[] {"http://10.0.102.112:8080/warme"};
         public void _setProperty(String name, Object value) {
              int size = _propertyNames.length;
              for (int i = 0; i < size; ++i) {
                   if (_propertyNames.equals(name)) {
                        _propertyValues[i] = value;
                        return;
              // Need to expand our array for a new property
              String[] newPropNames = new String[size + 1];
              System.arraycopy(_propertyNames, 0, newPropNames, 0, size);
              _propertyNames = newPropNames;
              Object[] newPropValues = new Object[size + 1];
              System.arraycopy(_propertyValues, 0, newPropValues, 0, size);
              _propertyValues = newPropValues;
              _propertyNames[size] = name;
              _propertyValues[size] = value;
         public Object _getProperty(String name) {
              for (int i = 0; i < _propertyNames.length; ++i) {
                   if (_propertyNames[i].equals(name)) {
                        return _propertyValues[i];
              if (ENDPOINT_ADDRESS_PROPERTY.equals(name) || USERNAME_PROPERTY.equals(name) || PASSWORD_PROPERTY.equals(name)) {
                   return null;
              if (SESSION_MAINTAIN_PROPERTY.equals(name)) {
                   return new java.lang.Boolean(false);
              throw new JAXRPCException("Stub does not recognize property: "+name);
         protected void _prepOperation(Operation op) {
              for (int i = 0; i < _propertyNames.length; ++i) {
                   op.setProperty(_propertyNames[i], _propertyValues[i].toString());
         // Begin user methods
         public java.lang.String purchase(java.lang.String string_1, java.lang.String string_2) throws java.rmi.RemoteException {
              // Copy the incoming values into an Object array if needed.
              Object[] inputObject = new Object[2];
              inputObject[0] = string_1;
              inputObject[1] = string_2;
              Operation op = Operation.newInstance(_qname_wrapped_purchase, typepurchase, typepurchaseResponse);
              _prepOperation(op);
              op.setProperty(Operation.SOAPACTION_URI_PROPERTY, "");
              Object resultObj;
              try {
                   resultObj = op.invoke(inputObject);
              } catch (JAXRPCException e) {
                   Throwable cause = e.getLinkedCause();
                   if (cause instanceof java.rmi.RemoteException) {
                        System.out.println("this is where it's at!"); // this is the feil!
                        throw (java.rmi.RemoteException) cause;
                   throw e;
              java.lang.String result;
              // Convert the result into the right Java type.
              // Unwrapped return value
              Object resultObj2 = ((Object[])resultObj)[0];
              result = (java.lang.String)resultObj2;
              return result;
         // End user methods
         protected static final QName qnameString_1 = new QName("", "String_1");
         protected static final QName qnameString_2 = new QName("", "String_2");
         protected static final QName qnameresult = new QName("", "result");
         protected static final QName qnamewrapped_purchase = new QName("http://org.jboss.ws/samples/docstyle/wrapped", "purchase");
         protected static final QName qnamepurchase = new QName("http://org.jboss.ws/samples/docstyle/wrapped/types", "purchase");
         protected static final QName qnamepurchaseResponse = new QName("http://org.jboss.ws/samples/docstyle/wrapped/types", "purchaseResponse");
         protected static final Element typepurchase;
         protected static final Element typepurchaseResponse;
         static {
              // Create all of the Type's that this stub uses, once.
              Element typeString_1;
              typeString_1 = new Element(_qname_String_1, Type.STRING, 1, 1, true);
              Element typeString_2;
              typeString_2 = new Element(_qname_String_2, Type.STRING, 1, 1, true);
              ComplexType complexTypepurchase;
              complexTypepurchase = new ComplexType();
              complexTypepurchase.elements = new Element[2];
              complexTypepurchase.elements[0] = typeString_1;
              complexTypepurchase.elements[1] = typeString_2;
              typepurchase = new Element(_qname_purchase, complexTypepurchase);
              Element typeresult;
              typeresult = new Element(_qname_result, Type.STRING, 1, 1, true);
              ComplexType complexTypepurchaseResponse;
              complexTypepurchaseResponse = new ComplexType();
              complexTypepurchaseResponse.elements = new Element[1];
              complexTypepurchaseResponse.elements[0] = typeresult;
              typepurchaseResponse = new Element(_qname_purchaseResponse, complexTypepurchaseResponse);
    And this is the client:
    package com.apps;
    import java.rmi.RemoteException;
    import javax.microedition.lcdui.Display;
    import javax.microedition.lcdui.Form;
    import javax.microedition.midlet.MIDlet;
    import javax.microedition.midlet.MIDletStateChangeException;
    import javax.xml.rpc.Stub;
    import com.stubs.TrivialService;
    import com.stubs.TrivialService_Stub;
    public class TestClient extends MIDlet {
         protected void startApp() throws MIDletStateChangeException {
              Form form = new Form("First test");
              form.append("HEllo Oinkers!");
              Display.getDisplay(this).setCurrent(form);
              TrivialService_Stub stub = new TrivialService_Stub();
              TrivialService ts = (TrivialService)stub;
              stub._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, "http://10.0.102.112:8080/warme?wsdl");
              try {
                   ts.purchase("Person","product");
              } catch (RemoteException e) {
                   e.printStackTrace();
         protected void pauseApp() {
              // TODO Auto-generated method stub
         protected void destroyApp(boolean arg0) throws MIDletStateChangeException {

  • How to get InitialContextFactory using RMI/IIOP without using weblogic.jar

    Hi Robert
    I know this is an old post. but I am interested in knowing how to get the
    initial context using RMI/IIOP without the use weblogic specific classes
    like weblogic.jndi.WLInitialContextFactory . If you have a code snippet that
    you can provide as an example, it would be just great.
    thanx in advance
    Daya Sharma
    See comments inline...
    Stewart Wachs wrote:
    I would like to get an initial context to Weblogic JNDI from a client.
    code snippet:
    Hashtable ht = new Hashtable();
    ht.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFacorty");
    ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
    try {
    Context ctx = new InitialContext(ht);
    catch(...) {
    This works fine when I include weblogic.jar (and other dependend weblogic
    jar's) in the classpath.
    Is there a way to access WL JNDI from a client without the weblogicclasses
    in the classpath?If you are using WLS 6.1, you could use RMI/IIOP to do this but in general,
    the
    answer is no, you will need at least some of the weblogic classes on the
    client.
    If not, is there a lightweight jar available for distribution for client
    JNDI connectivity?This is something in the works. In addition, a colleague and I are working
    on
    a white paper that describes the "Thin Client Options with WebLogic Server"
    that we hope to make available in the not too distant future...
    Are there any licencing issues with distributing the weblogic classes to
    clients that need to access WL JNDI?No. WLS is licensed by the server so you are free to distribute
    weblogic.jar
    to your clients.
    Hope this helps,
    Robert

    Take a look at the RMI/IIOP section of our whitepaper "Small Footprint
    Client options for BEA WebLogic Server" at:
    http://dev2dev.bea.com/resourcelibrary/whitepapers.jsp?highlight=whitepapers
    Daya Sharma wrote:
    Hi Robert
    I know this is an old post. but I am interested in knowing how to get the
    initial context using RMI/IIOP without the use weblogic specific classes
    like weblogic.jndi.WLInitialContextFactory . If you have a code snippet that
    you can provide as an example, it would be just great.
    thanx in advance
    Daya Sharma
    See comments inline...
    Stewart Wachs wrote:
    I would like to get an initial context to Weblogic JNDI from a client.
    code snippet:
    Hashtable ht = new Hashtable();
    ht.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFacorty");
    ht.put(Context.PROVIDER_URL, "t3://localhost:7001");
    try {
    Context ctx = new InitialContext(ht);
    catch(...) {
    This works fine when I include weblogic.jar (and other dependend weblogic
    jar's) in the classpath.
    Is there a way to access WL JNDI from a client without the weblogic
    classes
    in the classpath?
    If you are using WLS 6.1, you could use RMI/IIOP to do this but in general,
    the
    answer is no, you will need at least some of the weblogic classes on the
    client.
    If not, is there a lightweight jar available for distribution for client
    JNDI connectivity?
    This is something in the works. In addition, a colleague and I are working
    on
    a white paper that describes the "Thin Client Options with WebLogic Server"
    that we hope to make available in the not too distant future...
    Are there any licencing issues with distributing the weblogic classes to
    clients that need to access WL JNDI?
    No. WLS is licensed by the server so you are free to distribute
    weblogic.jar
    to your clients.
    Hope this helps,
    Robert

  • How to get jpegs automatically resized when placed in a book?

    Hello all,
    New member on board here. Got a question for you guys.
    When I pull a jpeg into a book page (I'm using the Library theme), I'm getting a "!" in a yellow triangle. I'm assuming that means the jpeg is too big.
    Is there a way that iPhoto can automatically resize a jpeg to fit within the parameters of the picture space?

    Thinkingman:
    Welcome to the Apple Discussions. Just the opposite, it means that the pixel dimensions of the photo are deemed too small for optimum image quality by iPhoto. What pixel dimensions are the photos and what size frame are you using it in?
    iPhoto automatically resizes photos to fit the frames in books, and the containers in the other items, calendars, cards, etc.
    Do you Twango?

  • Can't get jpegs small enough in Preview

    Hi,
    I get copies of original art posters that my company produces in PDF and jpeg format from my commercial printer, after he scans them. They are 2-7mb in size. I need to reduce them at times and when attempting to do so in Preview ( the default program) they will go down to a cerrtain size ( maybe 1.5mb from 4.5 mb) and that is it, can't get them any smaller.
    I would like to be able to produce lower res files (jpegs) to email as samples, files that wouldn't print as well but still be good enough to see, maybe reduce to
    350-650kb.
    Short of buying Photoshop, is there a way to do this on my iMac with the currently supplied graphic software?
    If not, is there an inexpensive or free shareware/software that I can download?
    Thanks in advance.
    Joe

    Items in the Mac App Store are for Mac computers, not for handhelds like the iPad, etc.
    GraphicConverter is a full-fledged application. It's been around for decades, and has always been a real value for the price asked.
    For your purposes, if you open a jpeg in GraphicConverter and then do a Save As (yes, unlike Apple's programs for Lion GC retains the Save As function), you will be offered an opportunity to reduce the quality without reducing the dimensions; this will reduce the net file size. The method is via a slider with before and after proofs, so you can see the effect before accepting it.
    GC also will do batch renaming and conversions (I've done folders containing many thousands of files in one operation), add thumbnails and previews (you control the size), catalog and slideshow presentations, and more. It will convert from/to most any known image file formats.
    GC also adds some contextual menu items which can be of use (contextual menus are what pop up when you Control-click or right-click on an item). One of these is the ability to remove a file's resource fork, which gets rid of the embedded preview image (this item is specifically in the Services submenu in the contextual menu). This can be of advantage when you need to reduce a file's net (on disk) size. In Lion the file will still show a thumbnail, provided the enclosing folder's attributes have been set to show icon previews (that setting is in the View Options screen for the enclosing folder - the Desktop counts a s a folder for this purpose), because Lion will use Preview to display a thumbnail for such files.
    And, GC includes a basic image editor.
    Yes, I am an advocate of GraphicConverter. No, I do not receive any compensation from it. I just think it's a great program.

  • How to get access via RMI from a session bean to a remote session bean?

    I have 2 J2EE applications in two different Sun Application Servers (8.0 PE). I would like to get access from one Session Bean "SB1" into Application A to Session Bean "BrickFacade" within Application B.
    My Java Code from "SB1":
             Context ic = new InitialContext();
             Object o = ic.lookup("java:comp/env/ejb/BrickFacade");
             BrickFacadeHome brickFacadeHome2 = (BrickFacadeHome) PortableRemoteObject.narrow(o, BrickFacadeHome.class);
             brickFacade = brickFacadeHome2.create();
             Collection col = brickFacade.doSomething();
             ...I configured the remote App.server in sun-ejb-jar.xml. I found the syntax within documentation (http://docs.sun.com/source/817-6087/dgjndi.html#wp24622) but I'm not sure if I this is the right usage.
         <ejb-ref>
            <ejb-ref-name>ejb/BrickFacade</ejb-ref-name>
            <jndi-name>corbaname:iiop://161.90.176.213:3700#webclient/BrickFacade</jndi-name>
          </ejb-ref>The context lookup throws the exception:
    "IOP00110603: (BAD_PARAM) Bad host address in -ORBInitDef"
    and
    Invalid URL or IOR: corbaloc:iiop://161.90.176.213:3700
    javax.naming.ConfigurationException: Invalid URL or IOR: corbaloc:iiop://161.90.176.213:3700 [Root exception is org.omg.CORBA.BAD_PARAM:   vmcid: SUN  minor code: 603  completed: No]
    Could anyone help me? Many thanks!
    Stacktrace:
    "IOP00110603: (BAD_PARAM) Bad host address in -ORBInitDef"
    org.omg.CORBA.BAD_PARAM: vmcid: SUN minor code: 603 completed: No
         at com.sun.corba.ee.impl.logging.NamingSystemException.insBadAddress(NamingSystemException.java:148)
         at com.sun.corba.ee.impl.logging.NamingSystemException.insBadAddress(NamingSystemException.java:166)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.badAddress(CorbalocURL.java:104)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.handleColon(CorbalocURL.java:140)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.handleIIOPColon(CorbalocURL.java:115)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.<init>(CorbalocURL.java:67)
         at com.sun.corba.ee.impl.naming.namingutil.INSURLHandler.parseURL(INSURLHandler.java:41)
         at com.sun.corba.ee.impl.resolver.INSURLOperationImpl.operate(INSURLOperationImpl.java:103)
         at com.sun.corba.ee.impl.orb.ORBImpl.string_to_object(ORBImpl.java:774)
         at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:338)
         at com.sun.jndi.cosnaming.CNCtx.initUsingCorbanameUrl(CNCtx.java:321)
         at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:247)
         at com.sun.jndi.cosnaming.CNCtx.createUsingURL(CNCtx.java:85)
         at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURLIgnoreRest(iiopURLContextFactory.java:56)
         at com.sun.jndi.url.iiop.iiopURLContext.getRootURLContext(iiopURLContext.java:44)
         at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:182)
         at javax.naming.InitialContext.lookup(InitialContext.java:347)
         at com.sun.enterprise.naming.NamingManagerImpl.lookup(NamingManagerImpl.java:702)
         at com.sun.enterprise.naming.java.javaURLContext.lookup(javaURLContext.java:108)
         at javax.naming.InitialContext.lookup(InitialContext.java:347)
         at de.emilberlinerstudios.va.ejb.testrh.sb.TestRemoteEjbBean.getBrickFacade(TestRemoteEjbBean.java:108)
         at de.emilberlinerstudios.va.ejb.testrh.sb.TestRemoteEjbBean.startTest(TestRemoteEjbBean.java:79)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.security.SecurityUtil$2.run(SecurityUtil.java:146)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sun.enterprise.security.application.EJBSecurityManager.doAsPrivileged(EJBSecurityManager.java:930)
         at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:151)
         at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:128)
         at $Proxy7.startTest(Unknown Source)
         at de.emilberlinerstudios.va.ejb.testrh.sb._TestRemoteEjb_Stub.startTest(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.forte4j.j2ee.ejbtest.webtest.InvocableMethod$MethodIM.invoke(InvocableMethod.java:231)
         at com.sun.forte4j.j2ee.ejbtest.webtest.EjbInvoker.getInvocationResults(EjbInvoker.java:96)
         at com.sun.forte4j.j2ee.ejbtest.webtest.DispatchHelper.getForward(DispatchHelper.java:189)
         at org.apache.jsp.dispatch_jsp._jspService(dispatch_jsp.java:75)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:102)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:282)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:263)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:210)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:236)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:145)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:141)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:214)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:168)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:144)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:133)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:539)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:272)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:114)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:936)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:165)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:683)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:604)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:542)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:647)
         at java.lang.Thread.run(Thread.java:534)
    |#]
    [#|2006-10-02T13:52:55.390+0200|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.stream.out|_ThreadID=11;|2006-10-02 13:52:55 [8080-Processor4] INFO .va.ejb.testrh.sb.TestRemoteEjbBean - RemoteException when getting BrickFacade. Message:Invalid URL or IOR: corbaloc:iiop://161.90.176.213:3700
    javax.naming.ConfigurationException: Invalid URL or IOR: corbaloc:iiop://161.90.176.213:3700 [Root exception is org.omg.CORBA.BAD_PARAM:   vmcid: SUN  minor code: 603  completed: No]
         at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:367)
         at com.sun.jndi.cosnaming.CNCtx.initUsingCorbanameUrl(CNCtx.java:321)
         at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:247)
         at com.sun.jndi.cosnaming.CNCtx.createUsingURL(CNCtx.java:85)
         at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURLIgnoreRest(iiopURLContextFactory.java:56)
         at com.sun.jndi.url.iiop.iiopURLContext.getRootURLContext(iiopURLContext.java:44)
         at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:182)
         at javax.naming.InitialContext.lookup(InitialContext.java:347)
         at com.sun.enterprise.naming.NamingManagerImpl.lookup(NamingManagerImpl.java:702)
         at com.sun.enterprise.naming.java.javaURLContext.lookup(javaURLContext.java:108)
         at javax.naming.InitialContext.lookup(InitialContext.java:347)
         at de.emilberlinerstudios.va.ejb.testrh.sb.TestRemoteEjbBean.getBrickFacade(TestRemoteEjbBean.java:108)
         at de.emilberlinerstudios.va.ejb.testrh.sb.TestRemoteEjbBean.startTest(TestRemoteEjbBean.java:79)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.security.SecurityUtil$2.run(SecurityUtil.java:146)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sun.enterprise.security.application.EJBSecurityManager.doAsPrivileged(EJBSecurityManager.java:930)
         at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:151)
         at com.sun.ejb.containers.EJBObjectInvocationHandler.invoke(EJBObjectInvocationHandler.java:128)
         at $Proxy7.startTest(Unknown Source)
         at de.emilberlinerstudios.va.ejb.testrh.sb._TestRemoteEjb_Stub.startTest(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.forte4j.j2ee.ejbtest.webtest.InvocableMethod$MethodIM.invoke(InvocableMethod.java:231)
         at com.sun.forte4j.j2ee.ejbtest.webtest.EjbInvoker.getInvocationResults(EjbInvoker.java:96)
         at com.sun.forte4j.j2ee.ejbtest.webtest.DispatchHelper.getForward(DispatchHelper.java:189)
         at org.apache.jsp.dispatch_jsp._jspService(dispatch_jsp.java:75)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:102)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:282)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:263)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:210)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:236)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:145)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:141)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:214)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:168)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:144)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:133)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:539)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:272)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:114)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:936)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:165)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:683)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:604)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:542)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:647)
         at java.lang.Thread.run(Thread.java:534)
    Caused by: org.omg.CORBA.BAD_PARAM: vmcid: SUN minor code: 603 completed: No
         at com.sun.corba.ee.impl.logging.NamingSystemException.insBadAddress(NamingSystemException.java:148)
         at com.sun.corba.ee.impl.logging.NamingSystemException.insBadAddress(NamingSystemException.java:166)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.badAddress(CorbalocURL.java:104)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.handleColon(CorbalocURL.java:140)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.handleIIOPColon(CorbalocURL.java:115)
         at com.sun.corba.ee.impl.naming.namingutil.CorbalocURL.<init>(CorbalocURL.java:67)
         at com.sun.corba.ee.impl.naming.namingutil.INSURLHandler.parseURL(INSURLHandler.java:41)
         at com.sun.corba.ee.impl.resolver.INSURLOperationImpl.operate(INSURLOperationImpl.java:103)
         at com.sun.corba.ee.impl.orb.ORBImpl.string_to_object(ORBImpl.java:774)
         at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.j|#]

    Problem solved:
    configuration in jndi-name was wrong:
    <jndi-name>corbaname:iiop:161.90.176.213:3700#ejb/BrickFacade</jndi-name>

  • Problem executing RMI tutorial "Getting Started Using RMI"

    I am trying to execute the RMI tutorial located at http://java.sun.com/j2se/1.3/docs/guide/rmi/getstart.doc.html
    I use JDK 1.3.1, and Windows XP Pro.
    I follow the info on the URL http://java.sun.com/j2se/1.3/docs/guide/rmi/getstart.doc.html
    And all is OK, but when I try to run the server.I use the following command:
    C:\public_html\htdocs\myclasses>java -Djava.rmi.server.codebase=http://127.0.0.1
    /myclasses/ -Djava.secutiry.policy=c:\policy examples.hello.HelloImpl
    And I got this error:
    HelloImpl err: access denied (java.net.SocketPermission 127.0.0.1:1099 connect,r
    esolve)
    java.security.AccessControlException: access denied (java.net.SocketPermission 1
    27.0.0.1:1099 connect,resolve)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkConnect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown S
    ource)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown S
    ource)
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
    at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
    at sun.rmi.server.UnicastRef.newCall(Unknown Source)
    at sun.rmi.registry.RegistryImpl_Stub.rebind(Unknown Source)
    at java.rmi.Naming.rebind(Unknown Source)
    at examples.hello.HelloImpl.main(Unknown Source)
    It seems its something with policy file, I used the one on the tutorial, but I still got error.
    Anyone could help me ?
    John

    I think it's just a typo in your command line. :)
    You're using java.secutiry.policy instead of
    java.security.policy.
    Feel the difference! :)

  • Why can I not get JPEGs through IMAP email

    I was able to recieve JPEGs and view them and then one day nothing. I can recieve all other picture files, but not JPEGs through IMAP email. I have already contacted IMAP problem. Wanting to see if anyone else is having this issue.

    iCloud mail only works with @me.com, just like the message says. If you want to view mail in iCloud, you can make an @me.com address, then you can set up forwarding on your MSN account so emails will be forwarded from MSN mail to iCloud mail.

  • I cannot get jpeg I import to resize, move, text wrap.  Extremely frustrated.  Any help please?

    I've gone through the help sections and tips.  I bring in an image, and cannot resize it.  I use the image mask and am able to crop the image to what I need.  But, it is placed badly in the middle of the page, won't resize, and worst of all-I cannot move the image without it disappearing out of the box and removing itsself from the page.  Text won't warp around the image, and all of the so-called controls are greyed out, wether I have the image selected or not.
    My question is:  How the H#%% do I work with an image in ibooks author?  Is this program messed up?  Is Apple planning to fix this?  These actions are easy to do in Pages, but iBooks does not work!  What box did I not check right to work with pictures?

    Consider the image and tbe mask as two separate items.
    You can move the image itself which is below the mask, and you can move and resize the mask itself as you choose to "crop" or size the image.  Use the handles on each to move or resize and also the size slder on tbe mask.
    Deselecting or clicking off the image closes the mask and you  should be able to move image as you chose.
    With regards your last paragraph....the answer is to learn about iBooks Author and what it can do, before starting out on a serious book project. The program is not messed up. You must have spent time learning tbe ins snd outs of Pages at first, iBA is similar to Pages in many ways.
    Go to your iTunes Connect page and open the Deliver your Content,  Top section Featured Resourses, there is a user guide and a formatting guide and below in iBooks Author ..is a superb instructional video. It will show you how to use many of the functions including the mask.

  • I get jpeg and video attachments that turn into an email icon when I try to download them, anyone else have a problem like this?

    On my new iPad email I have an attachment download problem that started shortly after downloading the latest iOS system. When i receive an email with a picture or video file it has a dashed line around it. When I touch it to download it to view it the icon changes to a mail message icon hen the download completes. Then when I touch it again to open it a new mail message opens up with the attachment there to be sent to someone else.

    Thank you for replying cor-el.
    You actually brought up a good point I forgot to mention.
    I tried using forward slashes and other variations in the same manner, and they all didn't work in Firefox, but worked in Chrome and I.E.
    Taking the example:
    file:///\\svr-1\folder1\folder2\file.jpg
    I also tried:
    file://///svr-1\folder1\folder2\file.jpg
    file://///svr-1/folder1/folder2/file.jpg
    file://svr-1\folder1\folder2\file.jpg
    file://svr-1/folder1/folder2/file.jpg
    These links didn't work embedded in an email or on a webpage. For the case of the webpage, when the mouse cursor is hovering over the links, the jump bar indicates the correct link, but when clicked, nothing happens. When the links are copied and pasted into the address bar, they work.
    Thanks again.

Maybe you are looking for