[help]编译j2ee tutorial 第一个例子出错!2
xlhl 2003-12-16 10:51:22 编译j2ee tutorial 第一个例子
设置如下
J2EE_HOME: E:\j2sdkee1.3.1
JAVA_HOME: E:\j2sdk1.4.1_01
CLASSPATH: .;E:\j2sdkee1.3.1\lib\j2ee.jar;E:\j2sdkee1.3.1\lib\classes;E:\j2sdk1.4.1_01\bin;E:\j2sdkee1.3.1\bin;.
PATH: E:\j2sdk1.4.1_01\bin;E:\j2sdkee1.3.1\bin;E:\j2sdkee1.3.1\lib;E:\j2sdkee1.3.1\lib\j2ee.jar;
======================================================================================
//ConverterClient.java
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import java.math.BigDecimal;
import Converter;
import ConverterHome;
public class ConverterClient {
public static void main(String[] args) {
try {
Context initial = new InitialContext();
Context myEnv = (Context)initial.lookup("java:comp/env");
Object objref = myEnv.lookup("ejb/SimpleConverter");
ConverterHome home =
(ConverterHome)PortableRemoteObject.narrow(objref,
ConverterHome.class);
Converter currencyConverter = home.create();
BigDecimal param = new BigDecimal ("100.00");
BigDecimal amount = currencyConverter.dollarToYen(param);
System.out.println(amount);
amount = currencyConverter.yenToEuro(param);
System.out.println(amount);
System.exit(0);
} catch (Exception ex) {
System.err.println("Caught an unexpected exception!");
ex.printStackTrace();
}
}
}
-----------------------------------------------------------------------------------------
编译结果:
E:\j2sdkee1.3.1\lib>javac *.java
ConverterClient.java:15: '.' expected
import Converter;
^
ConverterClient.java:16: '.' expected
import ConverterHome;
^
2 errors
=================================================================================
以下三个文件正确编译
//Converter.java
import javax.ejb.EJBObject;
import java.rmi.RemoteException;
import java.math.*;
public interface Converter extends EJBObject {
public BigDecimal dollarToYen(BigDecimal dollars) throws RemoteException;
public BigDecimal yenToEuro(BigDecimal yen) throws RemoteException;
}
import java.rmi.RemoteException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import java.math.*;
//ConverterBean.java
public class ConverterBean implements SessionBean {
BigDecimal yenRate = new BigDecimal("121.6000");
BigDecimal euroRate = new BigDecimal("0.0077");
public BigDecimal dollarToYen(BigDecimal dollars) {
BigDecimal result = dollars.multiply(yenRate);
return result.setScale(2,BigDecimal.ROUND_UP);
}
public BigDecimal yenToEuro(BigDecimal yen) {
BigDecimal result = yen.multiply(euroRate);
return result.setScale(2,BigDecimal.ROUND_UP);
}
public ConverterBean() {}
public void ejbCreate() {}
public void ejbRemove() {}
public void ejbActivate() {}
public void ejbPassivate() {}
public void setSessionContext(SessionContext sc) {}
}
------------------------------------------------------------------------------------
//ConverterHome.java
import java.io.Serializable;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface ConverterHome extends EJBHome {
public Converter create() throws RemoteException, CreateException;
}
-----------------------------------------------------------------------------------