J2ME (blackberry デバイス用) で作成されたプロジェクトを割り当てられました。このプロジェクトでは、クライアントのデータベースにクエリを実行するために元の asp ファイルを使用します。アイデアは、この J2ME プロジェクトを Android に移行することです。
問題は、プロジェクトでこれらの asp ファイルを使用する方法が見つからないことです (これらのファイルは大量のファイルであるため、これらのファイルを別の言語に変更するつもりはありません)。これには J2ME クラスが使用されているためです。 、そして私はプロジェクトを作り直していますが、アンドロイドを使用しています。asp ファイルは現状のまま保持する必要があります。
コードの一部は元の J2ME クラスに残しておきます。asp 名は registerUser.asp です。asp コードが必要な場合は、後で投稿できます。ありがとうございました。
HTTPConnections.java
import java.io.IOException;
import java.io.InputStream;
import org.apache.http.HttpConnection;
import org.xml.sax.SAXException;
public class HTTPConnections {
private static String URL_SERVER = "http://XX.XX.XXX.XXX";
private static String URL_BASE = "BB";
private static String URL_DIR = "BB";
private static String URL_REGISTER_USER = URL_SERVER+"/"+URL_BASE+"/"+URL_DIR+"/registerUser.asp";
public static boolean registerUser(String user, String password){
StreamConnection s = null;
PersistentStorage.database.setBD_AR__ID_TECNICO(0);
RegisterUserParser handler=null;
fin = getFinURL();
try {
s = (StreamConnection)Connector.open(URL_REGISTER_USER+"?u="+user+"&p="+password+";deviceside=true"+fin);
System.out.println(URL_REGISTER_USER+"?u="+user+"&p="+password+";deviceside=true"+";apn=web.iusacellgsm.mx");
HttpConnection httpConn = (HttpConnection)s;
int status = httpConn.getResponseCode();
System.out.println("El Status es: "+status);
PersistentStorage.database.setLog(PersistentStorage.database.getLog()+URL_REGISTER_USER+"?u=-"+user+"- p=-"+password+"- Status= "+status+"\n");
PersistentStorage.database.setLog(PersistentStorage.database.getLog()+"URL A LA BASE: "+URL_REGISTER_USER+"?u="+user+"&p="+password+"\n");
PersistentStorage.database.setLog(PersistentStorage.database.getLog()+"STATUS: "+status+"\n");
//Hector
PersistentStorage.database.setLog(PersistentStorage.database.getLog()+"El final del URL es: "+fin+"\n");
if (status == HttpConnection.HTTP_OK)
{
try {
InputStream input = s.openInputStream();
SAXParserImpl parser = new SAXParserImpl();
handler = new RegisterUserParser();
parser.parse(input, handler);
input.close();
} catch (SAXException e) {
//PersistentStorage.database.setLog(PersistentStorage.database.getLog()+"CATCH DEL SAX: "+e.getMessage()+"\n");
System.out.println("Error: 1 "+e.getMessage());
}
catch (IOException e){
System.out.println("Error: 500,000 "+e.getMessage());
handler = null;
}
PersistentStorage.database.setBD_AR__ID_TECNICO(handler.getIdTecnico());
}
s.close();
} catch (IOException e) {
PersistentStorage.database.setLog(PersistentStorage.database.getLog()+"CATCH 2: "+e.getMessage()+"\n");
System.err.println(e.toString());
System.out.println("Error: 2 "+e.getMessage());
}
if( handler!=null )
return true;
else
return false;
}
public static String getFinURL(){
String finURL = "", user ="", pass="";
String gSP = getServiceProvider();
if(gSP.equalsIgnoreCase("IUSACELL") && red.equalsIgnoreCase("CDMA")){
finURL = "";
}
else if(gSP.equalsIgnoreCase("IUSACELL") && !red.equalsIgnoreCase("CDMA")){
finURL=";apn=web.iusacellgsm.mx";
}
else if(gSP.equalsIgnoreCase("TELCEL GSM") && red.equalsIgnoreCase("GPRS")){
user=";TunnelAuthUsername=webgprs";
pass=";TunnelAuthPassword=webgprs2002";
finURL=";apn=internet.itelcel.com"+user+pass;
}
else if(gSP==null)
finURL = "Dio null";
else
finURL = "";
System.out.println("Mi URL es: "+finURL +" us: " + user+" pass: "+pass);
return finURL;
}
}