Making http connection
hi..
i try to make a connection to servlet when i press the submit button from midlet. the submit button getting the value from the textfield to query data from database. the db connection is ok, but im still confuse about the http connection code to servlet from midp to servlet. my server name is http:\\localhost:8000
thank you...
HttpConnection hc=null;
String urlstring="http://localhost/test.cgi"
hc=(HttpConnection) Connector.open(urlstring);
this is how u connect through http connection
the method u mentioned is for socket connection
Similar Messages
-
Making https: connection from java code loaded into Oracle 8i database
A bit of a blast from the past, really, as 8i provides a JVM at 1.2.2.
I need to provide an PL/SQL function which accesses a RESTful web service requiring https connection. Got the call working under 1.2 locally without much trouble using:
static {
System.setProperty("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
}The trick is to get the Oracle database to run the code internally. What libraries do I need where? I get an extremely unhelpful NoClassDefFoundError, without mention of the offending class.
By doing loadjava with jcert.jar,. jnet.jar and jsse.jar (the libraries I'm using with the test program) I can get loadjava to accept and allegedly resolve the class.endasil wrote:
malcolmmc wrote:
Well, sadly look at the colour scheme.Yeah, sarcastic was I. The NoClassDef error seriously doesn't give a class name? I find it astonishing that any implementation would be that stupid.Seriously. The strange thing is that before I got to the NoClassDefFound I had a Initialization error (until I added a security rule for setting the Provider) and for that I got a full stack trace (in an obscure trace file, granted). -
CertificateException while making https connection
Hello,
I'm trying to connect to Facebook's Graph API login page using https in my midlet, and am getting a certificate error: javax.microedition.pki.CertificateException: Server certificate chain exceeds the length allowed by an issuer's policy
The certificates seem valid: The site loads in Firefox, and I can verify the certificate with openssl - "openssl s_client -connect graph.facebook.com:443" (as long as the root Entrust certificate is known).
The midlet code I'm using is simple:
HttpConnection conn = (HttpConnection) Connector.open( "https://graph.facebook.com/oauth/authorize", Connector.READ );
InputStream in = conn.openInputStream();
And the stacktrace (running in the WTK2.5 emulator) is:
javax.microedition.pki.CertificateException: Server certificate chain exceeds the length allowed by an issuer's policy
at com.sun.midp.ssl.X509Certificate.verifyChain(+199)
at com.sun.midp.ssl.Handshake.parseChain(+121)
at com.sun.midp.ssl.Handshake.rcvCert(+117)
at com.sun.midp.ssl.Handshake.doHandShake(+96)
at com.sun.midp.ssl.SSLStreamConnection.<init>(+157)
at com.sun.midp.io.j2me.https.Protocol.connect(+214)
at com.sun.midp.io.j2me.http.Protocol.streamConnect(+57)
at com.sun.midp.io.j2me.http.Protocol.startRequest(+12)
at com.sun.midp.io.j2me.http.Protocol.sendRequest(+38)
at com.sun.midp.io.j2me.http.Protocol.sendRequest(+6)
at com.sun.midp.io.j2me.http.Protocol.openInputStream(+9)
at com.bluewhalesystems.test.webmidlet.startApp(+165)
at javax.microedition.midlet.MIDletProxy.startApp(+7)
at com.sun.midp.midlet.Scheduler.schedule(+270)
at com.sun.midp.main.Main.runLocalClass(+28)
at com.sun.midp.main.Main.main(+116)
I'm new to dealing with https in J2ME - am I trying to connect incorrectly? Or is there a setting for certificate verification that needs to be tweaked?
Thanks for the help,
Mikeabhi007tyagi, welcome to the forum. Please don't post in threads that are long dead and don't hijack another poster's thread. When you have a question, start your own topic. Feel free to provide a link to an old post that may be relevant to your problem.
I'm locking this thread now.
db -
Http connection / Accompli 008
Hi,
I'm currently developing a J2ME application for the Accompli 008.
Everything works fine, but I'm having trouble making HTTP connections from the Accompli 008.
I reduced the code that I only make a simple http-connection. The code works on the emulator and on a Siemens SL45i but the Accompli hangs. It connects to the Remote Access Server but then nothing happens. If I catch the java exception I see a "socket error".
With the same settings it's possible to get an internet connection when I use the pre installed browser.
Can you give me any help?
Thanks in advance.Hello sir,
i have tried your given suggestion and it work very well in WKT-tool
kit emulator as well as sun one emulator .but my app is not running on
real device i.e connection is not establish.I have tried all the
solutions as for as my knowledge but i could not solve the
problem.Please help me I will be very thankful to you...
My code is as here....
class ThreadedConnection extends Thread
ThreadedConnection()
start();
public void run() {
IMEI=txtenterIMEIno.getString();
String url ="some url";
try
HttpConnection http = (HttpConnection) Connector.open(url);
OutputStream oStrm = http.openOutputStream();
http.setRequestMethod(HttpConnection.GET);
http.setRequestProperty("Content-Type","application/x-www-form-urlencod
ed");
http.setRequestProperty("User-Agent","Profile/MIDP-1.0
Configuration/CLDC-1.0");
http.setRequestProperty("Content-Type", "text/plain");
http.setRequestProperty("IF-Modified-Since","20 Jan 2001
16:19:14 GMT");
http.setRequestProperty("Connection", "close");
InputStream iStrm = http.openInputStream();
int length = (int) http.getLength();
if (length != -1)
byte serverData[] = new byte[length];
iStrm.read(serverData);
currentInfo = new String(serverData);
else
ByteArrayOutputStream bStrm = new ByteArrayOutputStream();
int ch;
while ((ch = iStrm.read()) != -1)
bStrm.write(ch);
currentInfo = new String(bStrm.toByteArray());
bStrm.close();
System.out.println("File Contents: " +currentInfo);
}catch (Exception e) {}
} -
How to cancel a http connection mid-way
Hi,
I would like to cancel a http connection mid-way.
For example, I may make a connection to a web server and the midlet will display a wait screen with a Gauge showing the status of the connection. The screen also has a Cancel button to allow the user to cancel the connection.
I have written a method to cancel the connection (as below), but it doesn't work. The connection continues to be processed.
public void cancel () {
try {
if (httpconn != null) httpconn.close();
if (instrm!=null) instrm.close();
if (outstrm!=null) outstrm.close();
if (bStrm!=null) bStrm.close();
} catch (Exception e) { logger.addLog("cancel "+e.toString()); }
}Has anyone successfully tried to cancel a http connection mid-way?
Thanks.Hi,
I was also facing such problem but i got a solution for it.Method in which your are making HTTP Connection check a boolean variable after every line if
boolean variable is true than terminate connection otherwise continue connection. And set boolean variable true when cancel method is called. -
Outlook 2010 makes unexpected HTTPS connection for unrelated profile
I originally posted this in the Outlook forum, but was pointed here instead.
I have a number of different Outlook profiles, for unrelated Exchange accounts.
I recently noticed that a client's firewall log was showing unexpected failed logon attempts to port 443, from my IP, using my PC name and username. I eventually found that these connections corresponded to my starting Outlook 2010 on my PC, loading my usual
Outlook profile (unrelated to the client, although I do have another Outlook profile for this client's Exchange server.)
Recreating my usual profile didn't fix it. Eventually I created a test profile that contains just an empty PST file and the Fax service, and even opening this profile causes a failed HTTPS (presumably RPC over HTTPS) connection to the client.
Why would Outlook be making HTTPS connections (presumably RPC over HTTPS) to a server that isn't referenced in a profile? How can I remove such references?
Thanks.This was marked as the answer, but it is not.
I use RPC-over-HTTP for all the accounts, so I can't disable it.
The question is why is Outlook attempting to connect to the server referenced in profile X when I'm connecting (successfully) to a entirely different server referenced in different profile Y?
Thanks. -
How to solve Error in http connection. Error -1
urlMidlet2===http://localhost:8080/testProj?userId=20&selMPBL=23&svMPBL=IPOD+Touch+Screen+e!1!Tue+Jan+06+00:00:00+UTC+2009!Tue+Jan+06+00:00:00+UTC+2009!Sat+Jan+31+00:00:00+UTC+2009!Mp3+Player!IPOD!Rejected!12
[j2mepolish] Generic/DefaultColorPhone: !1!2!1222!13333
[j2mepolish] Generic/DefaultColorPhone: Protocol for this connection is http
[j2mepolish] Generic/DefaultColorPhone: This object is connected to localhost host
[j2mepolish] Generic/DefaultColorPhone: HTTP Port in use is 8080
[j2mepolish] Generic/DefaultColorPhone: respCode=====-1
[j2mepolish] Generic/DefaultColorPhone: Error in opening HTTP Connection. Error#-1
Why is this error coming? How to solve it?
Thanks in advance.
Edited by: J2me_Beginner on Jun 7, 2009 9:38 PMI am making a form using an interface. When Activate the Form, I got this error:
Invalid HTTP connection: ADS
Message no. FPRUN000
But I do not know how to solve or config ADS. Any one know how to slove this error ?
Thanks a lot. -
Hi,
in this class,
http://cid-17ec75244bac022f.office.live.com/embedicon.aspx/for^_sharing/SimpleSql.java
I am not sure if it's making the connection properly.
I'm making use of it in a Jdev project
regards,
Huaminuser12233770 wrote:
thanks
in the class, it's referring to one datasource like
javax.sql.DataSource ds
= (javax.sql.DataSource) ctx.lookup("examples-dataSource-demoXAPool");
How can we locate to the source amid WLS?Hmm. Are you trying to say: "How do you configure a datasource in Weblogic Server"?
Really, if you want help, make the effort to ask a proper question, WITHOUT abbreviations :s -
Error making initial connections for pool
I'm using WLS6.1 on NT, trying my personal implementation of a connector (non
CCI pattern) with a particular EIS.
i'm having this error... what depends from?:
####<25-ott-00 19.52.41 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190014> <Initializing connection pool for resource adapter
BlackBoxNoTx.>
####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190010> <Unable to determine Resource Principal for Container
Managed Security Context.>
####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190035> <There was/were 1 physical connection(s) created with
the following Meta Data: Product name of EIS instance: DBMS:cloudscape Product
version of EIS instance: 3.5.1 Maximum number of connections supported from different
processes: 0 User name for connection: null>
####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190026> << BlackBoxNoTx > Connection Pool initialization has
completed successfully.>
####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190014> <Initializing connection pool for resource adapter
SMJConnector.>
####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190010> <Unable to determine Resource Principal for Container
Managed Security Context.>
####<25-ott-00 19.52.47 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190010> <Unable to determine Resource Principal for Container
Managed Security Context.>
####<25-ott-00 19.53.06 CEST> <Error> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190024> << SMJConnector > Error making initial connections
for pool. Reason: examplescnnct.ConnectionImpl>
####<25-ott-00 19.53.06 CEST> <Warning> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190025> << SMJConnector > Connection Pool has been initialized
with no connections.>
####<25-ott-00 19.53.06 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<main> <system> <> <190026> << SMJConnector > Connection Pool initialization has
completed successfully.>
####<25-ott-00 19.54.30 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<Application Manager Thread> <> <> <190027> << SMJConnector > Shutting down connections.>
####<25-ott-00 19.54.30 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
<Application Manager Thread> <> <> <190028> << SMJConnector > Connections shutdown
successfully.>
Have you configured your principal map? Connection pools are initially populated using the
default ("*") principal from the map.
http://edocs.bea.com/wls/docs61/jconnector/config.html#1237429
HTH.
FilAiello wrote:
> I'm using WLS6.1 on NT, trying my personal implementation of a connector (non
> CCI pattern) with a particular EIS.
>
> <examplesServer>
> <main> <system> <> <190010> <Unable to determine Resource Principal for Container
> Managed Security Context.>
> ####<25-ott-00 19.52.42 CEST> <Info> <Connector> <semarmw0780> <examplesServer>
Tom Mitchell
[email protected]
Very Current Beverly, MA Weather
http://www.tom.org:8080
-
HTTP Connection for Solution manager
Dear Experts,
SAP support team asked to create a http connection for solution manager for service check.We already created a R/3 connection for solution manager.why they are asking for HTTP connection? Really they required HTTP connection ?,Is they are any problem with this type of connections.What are the transaction codes which are not run in SAP GUI. Please clarify my doubts.
Thanks and regards,
Patan Thavaheer.Hi Patan,
Solution Manager transaction codes open in http browser. You can check the behaviour yourself by making a login to solution manager and execute transaction code solman_setup.
For SAP support to open http browser within remote support, they need to have http connection opened along with HTTP url maintained.
Refer to the SAP help link above for the procedure.
Hope this helps.
Regards,
Deepak Kori -
It appears that Adobe Air does not support persistent HTTP connections?
As far as we can tell, Adobe Air does not support persistent HTTP connections via KEEPALIVE
Thus a new connection has to be established to the server, making certain types of network intensive applications slow.
Can anyone confirm if this is correct - is there any way to get Adobe Air to support KEEPALIVE and maintain persistent server connections?
aI am trying to get 3.3 Beta 2 with Flash Builder 4.6 on Windows 7 x64bit to work. But still no luck.
I have Flash Builder 4.6 on Win7 to work no problem.
I have updated the playerglobal.swc to 11.3 using http://labsdownload.adobe.com/pub/labs/flashplatformruntimes/flashplay er11-3/flashplayer11-3_p2_playerglobal_041812.swc
but still run into the same problem below:
I can't go through the steps to create a new Flex Mobile Project because of the following error "Air 3.3 Beta does not support mobile projects".
However, I have no problem creating a Flex Project (Web & AIR) and ActionScript Mobile Project. -
Https Connection from servlets using JSSE.
Hi all,
Although my question is the same as the QOW for this week, there is an error "unsupported keyword EMAIL" returned when i try to establish a https connection using servlet. The error log is as follow:
=====================================
java.io.IOException: unsupported keyword EMAIL
at com.sun.net.ssl.internal.ssl.AVA.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.RDN.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.X500Name.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.X500Name.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.connect([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.getInputStream([DashoPro-V1.2-120198])
at URLReader.doGet(URLReader.java:78)
===================================
Does anyone know the meaning of this error?
I try to write a java application using the similar code and it totally works fine(i can connect to the server and obtain the page). Does JSSE support Java Servlet? Or this is the problem of tomcat server? FYI, I'm using
Tomcat 3.2.2
Java SDK 1.3
Many thanks!
Ethan
p.s. Here is the source for my program
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.net.*;
import javax.net.ssl.*;
import com.sun.net.ssl.*;
public class URLReader extends HttpServlet{
private PrintWriter out = null;
public void doGet(HttpServletRequest req, HttpServletResponse res){
res.setContentType("text/html");
res.setHeader("Cache-Control", "no-cache");
res.setHeader("Progma", "no-cache");
out = res.getWriter();
java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.setProperty("javax.net.ssl.trustStore", "File_for_keyStore");
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
try {
URL url = new URL("https://server_name:port/index.htm");
HttpsURLConnection urlconnection = (HttpsURLConnection)url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(urlconnection.getInputStream()));
String outputLine ;
while ( (outputLine = in.readLine()) != null){
out.println("There is the result: "+outputLine);
in.close();
catch(Exception e){
public void doPost(HttpServletRequest req, HttpServletResponse res){
}I was just having this issue, after months of error-free ssl behavior, on a new machine i was installing (Note: that I was running the IBM jdk1.3) It turns out that when I was editing the java.security file to know about JCE/JSSE providers i had the providers in the wrong order. The Error causing sequence was:
security.provider.1=com.sun.net.ssl.internal.ssl.Provider
security.provider.2=com.ibm.crypto.provider.IBMJCA
# Extra provider added ibm@33894
security.provider.3=com.ibm.crypto.provider.IBMJCE
# extra provider i added
security.provider.4=sun.security.provider.Sun
The issue disappeared when i changed the order to:
security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.net.ssl.internal.ssl.Provider
security.provider.3=com.ibm.crypto.provider.IBMJCA
# Extra provider added ibm@33894
security.provider.4=com.ibm.crypto.provider.IBMJCE
hope that helps!
--john molnar
Trellis Network Security -
HTTPS connection from servlet to another webserver
Hi,
We want to make a https connection from a servlet in weblogic server to another
web server (not necessarily weblogic). We also need dual authentication. But whenever
we use URL.openConnection(), it always returns us weblogic's internal https and
SSL implementation. Since weblogic has no documentation about how to use these
internal classes, such as how to set trusted server certificate, and how to set
client certificate (servlet is a client of another web server). We want to use
jsse, after setting JSSE required system properties, I still get a weblogic's
httpsURLConnection. Can any of you tell me how to resolve this issue?
Thanks.
XinshiYeah, I'm using JSSE now. Here is what I did:
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provide());
Provider prov = new SimpleSecureProvider();
prov.setProperty("SecureRandom.efficient", "test.EfficientSecureRandom");
Security.insertProviderAt(prov, 1);
You don't really need the provider stuff to get the example working. I use it
to get around a quick in JSSE where the random number generator takes 15-30 seconds
to generate a random sequence at start up.
SimpleSecureProvider looks like this:
public class SimpleSecureProvider extends Provider
public SimpleSecureProvider()
super("SimpleSecureProvider-", 1.0, "Hack to enable more efficient random
seed generator");
test.EfficientSecureRandom is bascially an exact copy of Sun's SecureRandom.java
with the only difference that I used my own random number generator.
Anyway, rest of the code you need looks like this:
URL url= new URL("htps://someplace.com");
URLConnection sconnection = url.openConnection();
Do whatever.
I also stored jcert.jar, jnet.jar, jsse.jar in /usr/java/jdk1.3/lib/ext
I think that is everything.
I just noticed that service pack 9 has a security example that does not require
all these jsse hacks. I'm trying to get it to work, but not having much luck.
Anybody got this working right?
"Jayesh Patel" <[email protected]> wrote:
See if this works,
1. Add the 'j2ee.jar' to CALSSPATH in weblogic startup script.
2. Set the property SSLHandlerEnabled flase in config.xml
3. Add the following property permission to the
weblogic.policy' file under a 'grant' directive
for all codebases (bottom): 'permission java.security.AllPermission'
4. Use the following bit of source code to create an https connection:
import com.sun.net.ssl.*; ....
com.sun.net.ssl.HttpsURLConnection connection;
System.setProperty ("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
java.security.Security.addProvider(new
com.sun.net.ssl.internal.ssl.Provider() );
URL url = new URL( "https", hostname, query );
-Jayesh
connection = (com.sun.net.ssl.HttpsURLConnection )url.openConnection(
"Xinshi Sha" <[email protected]> wrote in message
news:[email protected]...
Hi,
We want to make a https connection from a servlet in weblogic serverto
another
web server (not necessarily weblogic). We also need dual authentication.But whenever
we use URL.openConnection(), it always returns us weblogic's internalhttps and
SSL implementation. Since weblogic has no documentation about how
to
use
these
internal classes, such as how to set trusted server certificate, andhow
to set
client certificate (servlet is a client of another web server). Wewant to
use
jsse, after setting JSSE required system properties, I still get aweblogic's
httpsURLConnection. Can any of you tell me how to resolve this issue?
Thanks.
Xinshi -
HTTPS connection from database
Hi all,
I have to implement https connection from a database with a Web server which requests a client certificate. I have the certificate in the wallet, but UTL_HTTP does not send it to the Web server.
So, is there any way to connect to a Web server which requires a client certificate?Could you explain how transport protocol influences certificate exchange during SSL session?
-
HTTPS connection from portal to external webserver
Hi,
I am looking for a way to open a HTTPS connection from portal server to an external webserver. According to <a href="http://help.sap.com/saphelp_nw04/helpdata/en/e2/71c83edf72e16be10000000a114084/content.htm">SAP</a> the code should look like
KeyStore keystoreCAs = ...
SecureConnectionFactory factory = new SecureConnectionFactory(keystoreCAs, null);
HttpURLConnection con = factory.createURLConnection("https://www.mycompany.com");
Does not look difficult, <b>but how do I create the keystore object</b>? The keystore object should somehow be connected to the portal server's keystore which manages the certificates of trusted Certificate Authorities.
Any ideas?
Regards,
MartinHi,
meanwhile I solved the problem by my own. The solution slightly simplified is given below.
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
java.lang.Object o = ctx.lookup("keystore");
com.sap.engine.services.keystore.interfaces.KeystoreManagerWrapper_Stub manager = (com.sap.engine.services.keystore.interfaces.KeystoreManagerWrapper_Stub) o;
java.security.KeyStore keystoreCAs = manager.getKeystore("TrustedCAs");
com.sap.security.core.server.https.SecureConnectionFactory factory = new SecureConnectionFactory(keystoreCAs, null);
java.net.HttpURLConnection con = factory.createURLConnection("https://www.mycompany.com");
For connecting via a proxy the host name and port number of the proxy have to be set as System properties using "https.proxyHost" and "https.proxyPort".
java.util.Properties systemSettings = System.getProperties();
systemSettings.put("proxySet", "true");
systemSettings.put("https.proxyHost","192.168.0.1") ;
systemSettings.put("https.proxyPort", "80") ;
Additionally you have to make sure that the server's certificate is issued by a trusted Certification Authority (Must have an entry in your Keystore "TrustedCAs"). To verify this use the Visual Administrator and view service "Key Storage".
Regards,
Martin
Maybe you are looking for
-
G/L roll forward and Asset Roll forward
HI Can some body explain me a G/L roll forward and Asset Roll forward I am new this topic is there roll forwards please explain me in detail in which situation we are using this roll forward. Thanks In advance, Regards, Lakshmi narayana
-
Where can i find a good download site for the iphone?
where can find a good download site for the iphone for games and videos?
-
Idvd error: unsupported movie type
I have recently updated both the running software to leapord and also updated ilife, giving me upated imovie and idvd. On my old system once I had finished editing a movie I would save it, open idvd, go to the file menu and select one step dvd from m
-
What happened to the chess picture?
I liked the chess picture in Vista for Start menu and User picture, that was my favorite. Any way to get it installed in Windows 7?
-
Zen Micro Headphone Jack Poll/Co
THIS IS A MULTISELECTION POLL -My Jack is fine 2-My Jack is/was broken 3-I know someone who has a micro and theirs is fine 4-I know someone who has a micro and their's is broken There seems to be this "massi've" problem with the zen micro with the he