You'll need two things - the J2ME (specifically its WMA API), which is the API used to access SMS resources, and an SMS gateway, which is the piece of hardware which actually generaters the SMS packets.
Well, if you deployed this on a mobile phone I'd imagine you could use that instead of a gateway. I've never tried it though. But you will need something which can send SMS - and that is always going to be hardware. There are plenty of gateways out there (google for "SMS gateway" - most now charge for use though.
I did this for an application I wrote that required immediate notification in the event of specific events. Well, I say "immediate", but in reality there is some delay of course with the cellular system, etc... But I digress, check out the following link:
That company is a provider of SMS messaging meaning that they will provide an api that you integrate into your application to generate SMS messages from their hardware and you are charged a rate on each message. I chose not to use their api, but rather use the email feature which lets a user send an email with the sms details and their system auto-formats this into an sms and then it is sent.
Hope that helps. David
Dad always thought laughter was the best medicine, which I guess is why several of us died of tuberculosis. -Jack Handy