#ff0000 3  2005 . - #000655  Wireless Messaging API (WMA).    SMS
#def  J2ME       ,     Java          .         (API)   .  J2ME         ,     .
     J2ME,     Java Specification Requests (JSR)  Java Community Process.     J2ME , ,  JSR-120 - Wireless Messaging API (WMA) (  ).             (SMS). 
WMA   Generic Connection Framework (GCF),         Connected Limited Device Configuration (CLDC). GCF         .      / ,      .     ,      GCF.    ,    "   CLDC".  GCF -   Connected Device Configuration (CDC),      WMA   ,  J2ME (,        ).
WMA       GSM  CDMA  .     . WMA   SMS  CBS.  WMA    ,     (    GCF     UDP ).   WMA     ( javax.wireless.messaging).
    ,      MessageConnection ,    GCF. URL,       (SMS  CBS),     ,   javax.microedition.io.Connector.open().     URL:
 sms://+417034967891
 sms://+417034967891:5678
 sms://:5678
 cbs://:5678

    URL   ,          .    ,     -   .  URL      ,       .
 URL       .
  ,   SMS .
---
import javax.microedition.io.*;
import javax.wireless.messaging.*;

.....

MessageConnection conn = null;
String url = "sms://+417034967891";

try {
    conn = (MessageConnection) Connector.open( url );
    //  -  
}
catch( Exception e ){
    //   
}
finally {
    if( conn != null ){
        try { conn.close(); } catch( Exception e ){}
    }
}
---
      MessageConnection.newMessage(),    ,      (   )    MessageConnection.send()   .
public void sendText( MessageConnection conn, String text ) throws IOException, InterruptedIOException {
    TextMessage msg = conn.newMessage( conn.TEXT_MESSAGE );
    msg.setPayloadText( text );
    conn.send( msg );
}
    : 
public void sendBinary( MessageConnection conn, byte[] data )
              throws IOException, InterruptedIOException {
    BinaryMessage msg = 
                       conn.newMessage( conn.BINARY_MESSAGE );
    msg.setPayloadData( data );
    conn.send( msg );
}
 ,       .   SMS    160-170 ,       -   .    140 .      , WMA     ,        .                 ,   MessageConnection.numberOfSegments().
    .    ,    receive() ,        .    ,                .

---
import java.io.*;
import javax.microedition.io.*;
import javax.wireless.messaging.*;

MessageConnection conn = null;
String url = "sms://:5678"; //      !

try {
    conn = (MessageConnection) Connector.open( url );
    while( true ){
        Message msg = conn.receive(); // 
        if( msg instanceof BinaryMessage ){
            byte[] data = 
                 ((BinaryMessage) msg).getPayloadData();
            // - 
        } else {
            String text = 
                 ((TextMessage) msg).getPayloadText();
            // - 
        }
    }
}
catch( Exception e ){
    // 
}
finally {
    if( conn != null ){
        try { conn.close(); } catch( Exception e ){}
    }
}
---
WMA            .  ,        .     DataInputStream, DataOutputStream, ByteArrayInputStream  ByteArrayOutputStream,              . 
#ff0000        WMA :
http://java.sun.com/products/wma/
http://jcp.org/aboutJava/communityprocess/final/jsr120/index.html.