Avatar billede kasseper Nybegynder
17. juli 2001 - 14:04 Der er 10 kommentarer og
2 løsninger

at lave et COM object

Hej.

Er der en der kan fortælle mig hvordan man laver et COM object i Java.
Det skal helst være i Java og ikke i Microsoft\'s version, J++.

Et link til en side der forklare det rimeligt forståeligt er også ok.
Tak tak
Avatar billede wisen Nybegynder
17. juli 2001 - 14:14 #1
...det tror jeg s.. ikke kan lade sig gøre; men er med på en lytter :)
Avatar billede kasseper Nybegynder
17. juli 2001 - 14:18 #2
Det kan det, men jeg er f.eks. ikke helt med på denne her :
http://java.sun.com/j2ee/blueprints/client_tier/ejb_clients/index.html
(se nederst)
Eller det vil sige at man laver en Bean, som så kan accesses som et COM object,
men jeg er stadig ikke helt med på hvordan man gør.
Plus at jeg har set et COM object lavet med Visual J++, så må det da også kunne lade sig gøre med Java
Avatar billede delbing Nybegynder
17. juli 2001 - 14:20 #3
det skal du ikke være sikker på, j++ har til tider sin egen måde at gøre tingene på (om det gælder i dette tilfælde skal jeg ikke kunne sige)
Avatar billede kasseper Nybegynder
17. juli 2001 - 14:29 #4
enig, men jeg håber :-)
Avatar billede bearhugx Nybegynder
17. juli 2001 - 22:11 #5
Prøv at læse denne .... Jeg kender den kun overfladisk - men så hut jeg visker - så der det en gennemgang af forskelle og ligheder om, hvordan man implementerer henholdsvis
- COM
- CORBA og
- RMI

i java

http://www.execpc.com/~gopalan/misc/compare.html

/Søren Munk Skrøder
Avatar billede bearhugx Nybegynder
17. juli 2001 - 22:17 #6

##
Join me in my quest to make this site THE ULTIMATE RESOURCE to learn everything about COM and all its related technologies, JAVA and all its related technologies, CORBA and all its related technologies, Visual C++ & MFC, Visual J++ & WFC, Win32 Systems Programming, Design Patterns, Enterprise Solutions, Transaction Processing Monitors, Message Oriented Middleware and Parallel Architectures.

- Gopalan Suresh Raj
##

Forklaring for site : http://www.execpc.com/~gopalan/index.html
Avatar billede lsimony Nybegynder
23. juli 2001 - 07:16 #7
Jeg har en gang fundet denne stump kode på nettet til kommunikation af en com-port. Jeg har dog ikke fået testet det endnu...

Hilsen Lars

import java.io.InputStream;
import java.io.OutputStream;
import java.io.IOException;
import java.util.Enumeration;
import javax.comm.*;

public class COMPort {

    public COMPort(String portname) throws Exception {
        init(portname, 2400, 100);
    }

    public COMPort(String portname, int rate) throws Exception {
        init(portname, rate, 100);
    }

    public COMPort(String portname, int rate, int timeout) throws Exception {
        init(portname, rate, timeout);
    }

    public void setHardwareFlowControlMode(boolean enable)  throws Exception {
        if (enable)
            sPort.setFlowControlMode(
                SerialPort.FLOWCONTROL_NONE
            );
        else
            sPort.setFlowControlMode(
                SerialPort.FLOWCONTROL_RTSCTS_IN |
                SerialPort.FLOWCONTROL_RTSCTS_OUT
            );

    }

    public InputStream getInputStream() {
        return inStream;
    }

    public OutputStream getOutputStream() {
        return outStream;
    }

    public SerialPort getSerialPort() {
        return sPort;
    }

    public void close() throws IOException {
        sPort.close();
    }



    private InputStream inStream=null;
    private OutputStream outStream=null;
    private SerialPort sPort=null;;

    private void init(String portname, int rate, int timeout) throws Exception {

        CommPortIdentifier portId=null;

        boolean  located=false;
        Enumeration portList = CommPortIdentifier.getPortIdentifiers();
        if (!portList.hasMoreElements()) throw new IOException(\"no com port found\");
        while (portList.hasMoreElements()) {
            portId = (CommPortIdentifier) portList.nextElement();
            // System.err.println(\"CHECKING: \"+portId.getName());
            if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                if (portId.getName().equals(portname)) {
                    located=true; break;
                }
            }
        }
        if (!located) throw new IOException(\"port \"+portname+\" not found\");
        // System.err.println(\"FOUND: \"+portId.getName());

        sPort = (SerialPort) portId.open(\"Java Simplified COM Port Access\", timeout);
        sPort.setSerialPortParams(rate,
            SerialPort.DATABITS_8,
            SerialPort.STOPBITS_1,
            SerialPort.PARITY_NONE);
        outStream = sPort.getOutputStream();       
        inStream = sPort.getInputStream();
    }

}



Avatar billede kasseper Nybegynder
23. juli 2001 - 08:29 #8
sorry Isimony, jeg skal ikke kommunikere med COM porten, men oprette et COM object.
Altså et \'Component Object Model\' object.
Avatar billede lsimony Nybegynder
23. juli 2001 - 09:49 #9
Sorry

Hilsen

Lars
Avatar billede bearhugx Nybegynder
23. juli 2001 - 10:55 #10
KassePer >> Fik du læst den hjemmeside, som jeg linkede til i mit indlæg ???

/Søren Munk Skrøder aka. BearHugX
Avatar billede kasseper Nybegynder
23. juli 2001 - 11:41 #11
Jep, men jeg håbede på at der var en lidt bedre forklaring på hvordan man rent faktisk gør.
Din artikel siger som i den jeg også har linket til højere oppe at man skal bruge RMI, som interface, men jeg er lidt i tvivl om hur man gør det, så jeg ville egentlig gerne enten ha et lille eksempel, eller bare et link til et lille eksempel, eller en tutorial....!

Så jeg lader den stå åbent lidt endnu...!
Avatar billede kasseper Nybegynder
20. august 2001 - 13:01 #12
Lidt til dig og mere til mig.....
DIn artikel, beskriver kun hvilke forskelle der er mellem COM objecter og RMI protokollen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

IT-Universitetet i København

CIO

Netcompany A/S

Linux Operations Engineer

AL Sydbank A/S (tidligere Arbejdernes Landsbank)

Afdelingschef til GDPR & Tech Regulation

KMD A/S

E2E Tester

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Sektionschef til Enterprise Arkitektur i Forsvaret på Østerbro