text:
Yesterday I asked you all for a little help on our instagram page. Wasn't 100% sure if we were in love with this string wrapped braid and wanted you guys to weigh in! The responses were mixed but there were plenty of you who asked for it to be posted that we decided it go ahead and put it up! Next time we do this, I think we'll use another material and we're excited to try it again. But that's my little sister in the photo above so in my eyes she looks like a warrior goddess, obviously. The step by step tutorial is below and here are some options that I think could be fun alternatives if you want to try this using something else.
We've used a bobbypin in place of a needle in order to weave in and out with ease. You'll need two different bobbypins. Tie one side of your string to the bottom of bobbypin #1 where the "u" shape is– that's what you're going to pin in at the top behind your braid (see steps). Now tie the ends of your material to bobbypin #2, as you'll be using that to weave in and out. (more…)


text:
I am so ready to stop BF completely, but my daughter, who is 3, is so attached to my breasts that she won't stop BF and patting my breasts. We finally weaned off of morning feedings and now only BF in the afternoons and when I rock her to sleep each night. But she is "addicted" to patting my breasts at times when we are not BFing. She sleeps with me at night and sometimes even in the middle of the night she wants to snuggle up to a breast until she falls back asleep. She gets upset if I push her hand away or if I tell her "We are taking a break from nurses/nursing" (she calls them nurses).
I am afraid I have created a monster, even though we have had talks about the fact that "big girls don't nurse" and "mommy is a big girl, and she doesn't nurse", "soon you will be a big girl and it will be time to stop nursing" etc. PLEASE HELP. I am so ready to be done with all this and I think it is time for her to grow up a little bit by going through the normal process of separating from that attachment. Any suggestions are welcome.

subset: commoncrawl


text:
Auto Loans
Buying a new or used car? Turn to your Credit Union first for financing.
Our rates are below the competition, and you can count on flexible terms and financing up to 120% of the car's Kelley Blue Book value. Interest rates are dependent upon credit worthiness and the term of the loan, with terms extending up to 84 months!
Nikkei Credit Union will also finance the purchase of a car that is 9 model years or newer. For used cars, the term of the loan will vary with the year, make, model and mileage of the vehicle.
What do I need to qualify for a car loan?
When you submit your loan application, we'll be looking at your credit history to determine how much we can finance for you. A good credit history consists of a record of on-time payments to your creditors (e.g. credit cards, other loans).
Are your rates the same for new & used cars?
We have established separate rates for new and used vehicles - check the current loan rates.
Is there an early pay-off penalty?
No. You can make payments toward your loan balance any time and there won't be any penalty fees. Paying off your loan early is certainly a benefit to your finances as it will decrease your total interest payment.
Guaranteed Auto Protection(GAP)
What happens to your car loan if the car gets damaged? Or, what if it's stolen? [Read more about GAP...]
Mechanical Breakdown Insurance (MBI)
Will you be prepared when the mechanic tells you the repairs are not under warranty? [Read more about MBI...]
Online Loan Application (NEW + USED AUTO) >>>
myEZ Car Care VIP Plan – Click here for more information!


text:
A 42-year old teacher has been charged with 11 counts of 1st degree sexual assault and five counts of 3rd degree sexual assault.
Police said Bryan Lindberg began a sexual relationship with a female student, who was 14-years-old at the time when she attended Hawaii Mission Academy.
According to court documents, Lindberg would drive the high school freshman to school before classes would start in the fall of 2008.
The two then engaged in sexual activities including oral sex by December 2008.
Police say Lindberg and the female student engaged in these activities in his classroom with the doors locked.
The female student, who is now 17-years-old, and her mother are working with police and willing to prosecute this case.
Hawaiian Mission Academy released a statement Friday. It said that Lindberg is a former Hawaiian Mission Academy teacher. His contract ended in 2009.
Hawaiian Mission Academy said when it learned about the allegations, the school promptly reported the matter to both the Honolulu Police Department and Child Welfare Services. The school has had no involvement in the investigations since 2009.
Police arrested Lindberg on Wednesday.
District court Judge Leslie Hiyashi confirmed bail at $200,000.
Lindberg's next court appearance is scheduled for Tuesday at 1:30 p.m.


text:
For his book, "The Blue Zones," adventurer and author Dan Buettner spent years studying various corners of the world where life expectancy is the longest.
In his travels, Buettner met 104-year-old Giovanni Sannai of Sardinia, who started his day with wood-chopping and a glass of wine. Buettner told NPR that he challenged Sannai to arm wrestle, and the old man won.
You probably won't win arm-wrestling matches at that age. But you can add years to your life.
Here are five tips for increasing longevity:
Eat Food
Food expert and author Michael Pollan lives by a wise seven-word manifesto: Eat food. Not too much. Mostly plants. What people often eat, he says, is not food but processed substances and chemicals that can lead to all kinds of diseases, from heart ailments to diabetes. Those strip years off your life.
Here's more advice from Pollan:
Don't eat anything your great grandmother wouldn't recognize as food. (Portable yogurt tube? No.) Don?t eat anything with more than five ingredients, or ingredients you can't pronounce. Don't eat anything that won't eventually rot. Enjoy meals at a table, with family, at regular meal times. Leave the table a little bit hungry.
Have Sex
In a CNN story earlier this year, the network featured yoga instructor Sadie Nardini and her husband, who made an early New Year's resolution: sex every day for the month of December.
The two made the vow to help curb their appetite for cigarettes and chocolate, and it worked, they said. But they also discovered the sex helped them sleep better, gave them more energy, and Nardini said they didn't get the winter colds they typically do.
Research generally supports the notion that more sex leads to healthier lives.
Men who have sex three times a week can decrease their risk of heart attack and stroke by 50 percent, said Drs. Michael Roizen and Mehmet Oz, who together wrote a book, "You: Being Beautiful." Men who have 150 to 350 orgasms a year can feel two to eight years younger, and regular sex can decrease general pain, the doctors said.
Respect Your Body
You have to exercise to live longer -- there is no way around this one. So turn off "The Biggest Loser" and get outside. Perhaps the best advice here is the most simple: Find exercise you enjoy and make it a high priority in your life. Get creative. Find activities you are willing to do for the long term.
Oz, a surgeon and TV health guru, offered these other tips for men (from among his top 25 greatest health tips, listed in Men's Health magazine):
Don't pamper your back -- taking to bed will make a bad back weaker; it's better to get moving.
Drink green tea as an alternative to coffee and sugary drinks. It's full of heart-boosting and cancer-stopping polyphenols.
Know your digits. These include blood pressure (ideally it should be below 115, over 75), LDL cholesterol (under 100), resting heart rate (under 70), and fasting blood sugar (under 100). For every point a man's body mass index is over 25, testosterone drops 3 percent, which, Oz notes, isn't very manly.
Rest. Oz says seven hours of sleep helps lengthen lifespans, lowers stress, sharpens memory and reduces food cravings.
Another tip: floss. Research shows that bacteria that lingers in the mouth ends up in the bloodstream and can increase risk of heart disease.
Cut Stress / Connect With Family
In the nine tips outlined in Buettner's "Blue Zones" book, four of them (reduce stress; belong to a community; keep family first; surround yourself with people who have similar blue zone values) fall under this heading.
Stress corrodes healthy living and leads to bad habits that shorten lives: drinking, smoking and junk food, researchers say. Look for ways to reduce stress: exercising, playing games, walking, sex, gardening -- any hobby you enjoy. Draft a to-do list and then set a realistic plan for getting it all done. Simple breathing exercises can help slow a racing mind.
Experts also recommend people talk through problems even when -- especially when -- it seems really hard to do. It's been suggested that one reason women live longer is because they form closer networks of friends and lean more often on support groups. Financial experts note that money is the most common stressor for many men and they recommend facing any cash problems head-on and putting a plan in place to solve them.
Oz offers this last tip: laughing eases stress, promotes social bonding, lowers blood pressure and it may boost the immune system.
Engage Your Brain
Researchers are learning more and more about what keeps the brain sharp over time and how it affects lifespan. Scientists say that fewer than one in 200 people reach the age of 90 with no sign of dementia, and those people are offering researchers bountiful new data on how they did it, the New York Times reported last year.
"We think, for example, that it's very important to use your brain, to keep challenging your mind, but all mental activities may not be equal," Dr. Claudia Kawas, a neurologist at the University of California, Irvine, told the Times in a May 2009 article. "We?re seeing some evidence that a social component may be crucial."
The Times article featured a group of plus-90 women who play bridge, which tests memory and keeps the brain engaged. Evidence suggests that people who spend three hours or more a day engrossed in mental activities like card games might be at reduced risk of developing dementia, the Times reported. Researchers want to know if those card players are active because they are sharp, or sharp because they are active.
But studies so far certainly suggest that it's a good idea to take your brain out for a spin every day. Do puzzles or games. Read a type of book that is unfamiliar. Learn a new skill -- a dance step or basic phrases in foreign language. Change up daily routines a bit. Or get creative -- take a stained-glass window or woodblock print art class.


text:
Another great game tonight, well played Dewsbury.Shows what a good kicking game can do, end to end stuff but Dewsbury deserved it.Lets hope next thurs when we are on its another thriller.
Thurs Night Premier Sports Games
Posted 16 May 2013 - 08:20 PM
Posted 17 May 2013 - 06:44 AM
Thought the same myself when the caption for our game next week came up at the end. Top telly from Dewsbury and Halifax last night, as was Swinton v Whitehaven in the previous game ...we've got a bit to live up to !!
No doubt Dewsbury deserved to edge it but the key point was Halifax's 100 yard try chalked off for taking a man out on a Dewsbury kick-through. Pound to a penny that would have stood if the TV cameras weren't there.
Thought Pryce had a big game and Goulding looked a different player to when he played for Donny against us earlier in the season.
Opened the Northern Rail up a bit, that result too ... as one of Featherstone and Leigh will go out at the weekend as well, at least one club outside the top five breakaway teams is sure to make the semi-final.
Edited by Hawkwindbag, 17 May 2013 - 06:49 AM.
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users


text:
FBC Jacksonville Pastor Derek Staples donates kidney to church membercomment (0)
April 19, 2012
By Carrie Brown McWhorter
Last August, Pastor Derek Staples led a prayer service at First Baptist Church, Jacksonville, for Jennifer Borders, a church member suffering from advanced kidney disease. Jennifer was preparing to begin dialysis, and her name soon would be added to the national waiting list for a kidney transplant.
As the service ended, Staples turned to Jennifer's husband, Jason, and said, "Wouldn't it be something if God used someone in this room to be a channel of blessing to reveal His glory?" Little did Staples know that God was in fact planning to use someone in that room, and that "someone" was him.
Knowing Jennifer's need, Staples joined a handful of members from First, Jacksonville, in Calhoun Baptist Association, who volunteered for a blood test that would determine if any of them might be a match for her. Since Jennifer and Staples' wife, Julie, share a blood type, he expected that if either of them were candidates, it would be Julie. However, in December, Staples got the news that he was a match, and if was willing, they would proceed with further testing to determine whether he could give a kidney to Jennifer.
"We were convinced it was of the Lord, and throughout the process, the Lord kept confirming it was His will," Staples said.
Further tests showed that Staples, 51, was indeed a suitable donor, and a few weeks later, Derek Staples became a living organ donor.
According to the website of the United Network for Organ Sharing (UNOS), the first living organ donation happened in 1954, when a kidney from one twin was successfully transplanted into his identical brother. Today more than 6,000 individuals choose to become living donors each year. Kidney donations are by far the most common, but living donors also can provide a lobe of a lung or a portion of a liver, pancreas or intestine. While many living donors choose to give to a relative, one in four donors is not biologically related to the recipient. Even total strangers can be living donors to someone who is waiting for an organ transplant.
"Especially when a kidney donation is involved, a living donor usually provides the best possible outcome," said Derek DuBay, assistant professor of surgery in the division of transplantation at the University of Alabama at Birmingham (UAB) and a deacon at Liberty Park Baptist Church, Vestavia Hills, in Birmingham Baptist Association. "When compared to dialysis, a pre-emptive kidney transplant offers the most improvement in health and a huge survival advantage to the patient."
While the potential benefits are great, organ recovery and transplant surgeries involve risks as well. For this reason, living donors go through an extensive process of education about the transplant process prior to surgery. Part of this preparation involves meeting with a living donor advocate, who works only with the potential donor to ensure that he is indeed willing to give and comfortable with the process, according to Maryann Bonventre, living donor coordinator at UAB Kidney Transplant Center. A new Kidney and Pancreas Transplant Clinic also opened at UAB in March.
"Donating (an organ) is pretty much the greatest gift you can give to someone while you are still alive, so it needs to be something you are completely convicted you need to do," Bonventre said.
"We want them to donate because they desire to give a kidney, not because everybody else wants them to."
For Staples, the decision to donate was directly related to his belief that the Bible instructs Christians to help others.
"Jesus said, 'Love your neighbor as yourself,' and most of us as believers on a daily basis are trying to work out what that means," he said.
Staples said the experience has taught the entire congregation more about what it means to be a servant, and he believes that is why God chose him to be a donor.
"It's very humbling to know that of all the people in this community and in this church, God selected me to give a kidney to Jennifer," he said. "Maybe the Lord selected me as a pastor to help communicate with others the importance of loving and caring for each other."


text:
Site-built staircases are an important part of many medium-budget projects. In... Read more
Simple-to-make railing stands allow accurate assembly right in position. Read more
Loose-fitting dowels and five-minute epoxy allow fine adjustments in the assembly. Read more
This unique newel and railing system was custom built on site from stock parts. Read more
While new stair codes have made winders more complicated to build, full-scale... Read more
This unique newel and railing system was custom built on site from stock parts. Read more
In building this double winder stair, remodeler Dave Holbrook used modular boxes... Read more
Steel comes in handy to stiffen a newel post Read more
When building a house with a loft accessed by a code-compliant stair, does a second, unorthodox, stair that leads to the same loft space have to comply with code as well? Read more
Coastal Connection goes on site with New England Soundproofing in Boston's South... Read more
Stacking the basement stairs under the stairs to the second floor opens up the... Read more
Sleek but strong handrail; backyard face-lift; easier winders Read more
Making the most of a small upstairs Read more


text:
Birthing Centers
It seems like just yesterday that when a woman was having a baby, she had two choices: deliver at the local hospital or at home. This is not the case today as expectant parents have more control over the process of having a baby than ever before and many expectant parents like the idea of having their baby at a freestanding birthing center.
These centers may be free-standing, on the grounds of an associated hospital, or inside a hospital and are usually operated by a certified nurse-midwife (CNM). The main thing that sets birthing centers apart from hospitals is that a birthing center's focus is on family-centered care that allows the mother to have a lot of input about what goes on during the birth of her baby. Although centers may vary greatly, most operate under guidelines and criteria established by Lamaze.
When expectant parents decide to deliver at a birthing center they can expect a comfortable environment. Typically, rooms are private and have carpeting, plants, pictures, a rocking chair, and in many instances, a bed large enough so that your partner can lie down with you. While many hospitals may limit or restrict whom a mother may have attend the birth, in a birthing center, the mother decides who may attend her. Along with the expectant father or partner, other relatives, friends and siblings may attend. Birthing centers encourage laboring mothers to choose the position they prefer for labor and delivery and even allow her to choose what clothing she wears. Most centers have IVs, oxygen, infant resuscitators, and analgesics; however drugs, medical intervention, or fetal monitoring are not routine or expected. Women delivering in birthing centers usually have shorter stays and use fewer (if any) drugs. The cost to deliver at a birthing center is about one-third the cost of delivering at a hospital and most major insurance companies cover birth centers. Essentially, a top-rated birthing center should combine the comforts of home with the technical expertise of modern medicine.


text:
Hi ladies
I have been exclusively breastfeeding my son, who is now 4 months. I pump at work,. Ive noticed that I have been feeling lightheaded often the past few weeks. It happens more after a pumping or feeding session. I am eating and driking enough fluids. I've never had low bp.
Anyone had this ?


text:
Career Clinic: Got the bonus blues? What are your options?
New posts are up 38% in the City on a year ago, so all the signs are that the Square Mile is heading out of the doldrums, which suggests that we may be about to see a lot more "velocity" in the market post-bonus day, given the increased confidence, as employees bank their bonus and then decide it's time to move on.
But what can you do if you're not happy with the amount you are paid? The reality is that those who remain in employment, other than the real superstars, are usually reluctant to raise formal challenges. However, for those exiting anyway there is less to lose, and a particularly poor bonus can even trigger a constructive dismissal claim, releasing an individual from their post-termination restrictions that restrict what they can do upon leaving.
So what are your options?
Check your contractual terms. Is the bonus a purely discretionary one or are there certain contractual promises which give you some grounds to challenge the amount paid, for example, a guarantee on what you will receive, on how the bonus pool is calculated, or a formula which guarantees you a particular percentage of the P&L you generate? If so, a legal challenge may be relatively straightforward.
Have any assurances been given to you, whether oral or in writing, about your bonus over the course of the year, for example, to persuade you to stay? If so, then a recent court ruling suggests that in certain cases, those assurances have contractual effect and can be enforced.
Have you regularly been paid a bonus at a particular level or based on a particular formula over many years? If so you may be able to argue that the terms have been incorporated into your contract by custom and practice.
Why do you think you have been paid at the level you have? Do you think it could be for a discriminatory reason for example, because of your sex (maybe you are perceived as not being as committed as your male colleagues because you recently returned from maternity leave), your age (maybe you aren't seen as such a flight risk because you are older than your younger colleagues) or your race, part-time status, disability, religion or sexual orientation? Alternatively, it may be that you have been paid less because you have blown the whistle on your employer, although following changes to the law in July last year, you would need to show that you believed the concerns you raised with your employer were in the public interest. For these cases, a legal claim can be brought in the Employment Tribunal to challenge the level of payment.
Has your employer given you reasons why your bonus is paid at the level that it is? While most bonus clauses are now drafted so that the amount paid is at your employer's discretion, your employer's discretion is not absolute and it can still be challenged where the amount paid is "perverse" or "irrational". If your employer is unable to point to good reasons why you have been paid the amount you have been then, that may give you grounds to challenge the payment, particularly where you can concisely and clearly set out what you have achieved for your employer over the course of the year (and assuming of course that your employer as a whole performed well for the year). A zero bonus is often going to be easier to challenge than a low one – one reason why few employers will now risk giving zero bonuses without clear grounds to justify it, for example, where an individual received a disciplinary warning during the year or received a low appraisal grading.
Do you think you were dismissed before bonus payment date just so that your employer escaped an obligation to pay your bonus? For those cases, there may be a legal route open to challenge the dismissal that could include compensation for the lost bonus, though it's untested by the courts at this stage.
If you are thinking of challenging your bonus, then your strategy to challenge the amount paid should vary depending on whether you want to remain with your employer or are looking to leave. Legal advice on the strength of your claim and the pros and cons of the different routes to challenge is strongly advisable.
And if you don't have a legal claim? Then you have to consider whether it's time to vote with your feet…
--Julie Morris is a partner at Slater & Gordon
Send your career questions to firstname.lastname@example.com


text:
Graduate Programs
Provided below are brief descriptions of graduate programs offered by the Department of Business Administration.
Doctoral Programs
The objective of Ph.D. in Business Administration is to provide our doctoral students with the necessary skills to identify and research complex issues within the field of management. Our doctoral program is founded on: research excellence; student initiative; and building student/professor partnerships.
Masters of Science in Technology Management (MSTM)
The Technology Management Program is a curriculum specifically designed for current and future business leaders. This MS degree in Business Administration, with a concentration in Technology Management, illustrates the merging of business and technology in all industries and provides graduates the critical skills for future success.
It equips students with the confidence and the competence to initiate, to anticipate, and to respond to the fast-evolving technological advances that define today's business landscape. This 12-month program's intensive and focused approach to management education tailors and complements its coverage of core business principles to address the technological issues and challenges inherent in managing any company or organization.
- MS-Tech Program (Urbana-Champaign)
Graduate Minor in Information Technology (IT) & Control
Students with expertise in this minor area, which is about how to manage companies more effectively with information technology, are increasingly being valued in corporations and the marketplace. The graduate minor in IT and Control is designed to allow business students to acquire necessary knowledge and skills through courses in Enterprise Information Technology, Information & Data Management, Decision Support, Electronic Commerce, and IT Governance.
Graduate Minor in Corporate Governance and International Business
The minor in Corporate Governance and International Business is designed to develop leaders in various business fields who understand International Business and Corporate Governance issues within the global economy. The minor specifically covers topics such as (1) how to create value for multinational partners, employees with diverse cultural backgrounds, and shareholders by designing better organizations and corporate governance and (2) how managerial practices differ in various national/cultural contexts and why manages must be able to understand the strategic, financial, and economic implications of these differences in managing multinational corporations. The minor will provide not only a strong foundation in the International Business and Governance area but could be tailored to fit the specific career needs of our students.


text: Sobella Soft and comfortable underfoot, beautiful, durable, and low-maintenance - what more could you ask for? Sobella offers all this and more with designs that are the most fashion-forward and innovative, and it's the only floor of its kind made right here in the USA. Click on a product below to find out more about it.


text:
Corpoboost – Responsive Joomla Template
Corpoboost Joomla 2.5x / 3.1x Ready Responsive Template
This template build for Joomla 2.5x and 3.1x version with bootstrap framework, you can use this template for your corporate or company or your portfolio site. there have lot's of features included such as built in slider, joomla core component and module custom design, custom module design with animation, header pattern changer, 40+ background pattern, built in twitter display option, built in testimonials display option, bootstrap style menu with mobile navigation, k2 component styling with blog and project custom template, it's also have simple image gallery design, Social link styling, language switcher module styling.
Why you choose this template?
- Bootstrap Framework included
- Joomla 2.5.14 / 3.1.5 built in component and module ready
- Latest version 2.5.14 and 3.1.5 both quick-start package included
- 30+ module positions
- CSS3 Dropdown menu
- One click overall color switcher
- Any google font support (600+ counting…)
- Awesome Revolution Responsive Slider Component Included (it's save you $25 dollar)
- Shortcodes Plugin Included that you can use for generate 20+ Shortcode
- Client testimonials Module Included
- Social icon Module Included
- 40+ Background Pattern
- Changeable header title pattern
- 5+ Module styling (with 360+ changeable icon)
- 360+ FontAwesome retina display ready font icon, you can change it to any color
- K2 Component and module Ready with 2 custom template (blog and portfolio template)
- Widgetkit 1.4.6 style ready
- Simple Image Gallery ready
- also social link, language switcher, smart search etc ready for you
Source and credit
- Twitter Bootstrap Framework
- K2 Component
- SIG Image Gallery Plugin
- Widgetkit lite
- Revolution Slider
- Thanks to Photodune.net for images
My Brand New Beauty Salon Template Published:
Version History:
Version 1.3 (Published on: 3rd October 2013)
^ Template Update and approved for latest version of joomla 2.5.14 and 3.1.5 ^ Update Joomla to 2.5.14 in quick start package ^ Update Joomla to 3.1.5 in quick start package ^ All component, module and plugins now update to latest version. # Twitter problem fixed used widgetkit instead of built in twitter # K2 paginating problem fixed # Fixed Responsive Menu # Fixed some minor styling issue + ADDED Fontawesome icon system + ADDED Revolution Slider (it's save you $25 dollar) + ADDED 20+ Shortcode system now you can easily add many things + ADDED Contact Us module so you can make it easily + ADDED Testimonials module so you can add testimonials easily + ADDED Full width layout so you can make your site full width easily - Removed built in twitter system - Removed built in slider system - Removed Icomoon icon system (sorry for that)
Version 1.2
+ IE8 Support Added + 150+ New Icon Added # Contact Form IE8 Issue Fixed # Sub menu Overlapping Problem Fixed # More several bug fixed
Version 1.1
^ Update Quick start package 3.0 to 3.0.2 Stable + Joomla 2.5 Template Added + Joomla 2.5 Quick Start Package Added + Another Google map added # Project Page Stuck Issue Fixed # Module Color mismach Issue Fixed # Blockquote cite tag fixed # Twitter text placement fixed # Search page styling issue fixed # More several bug fixed
Version 1.0
Initial release 1.0.0


text:
To illustrate the MIDlet lifecycle and how it can be controlled, we'll create a very simple MIDlet that does the following:
Related Articles:
The Mobile Information Device Profile and MIDlets, Part 5
The Mobile Information Device Profile and MIDlets, Part 3
The Mobile Information Device Profile and MIDlets, Part 2
The Mobile Information Device Profile and MIDlets, Part 1
Since you haven't yet seen how to create user interfaces, this example MIDlet communicates by writing messages to its standard output stream. On a real device, you can't see what is written to standard output or standard error (unless you are using debug facilities provided by the device vendor), but most device emulators provide a way to monitor the content of these streams. There are several products available that allow you to build and test MIDlets either in an emulated environment or on the real device; some of these products are described in Chapter 9. Here, we'll use the Wireless Toolkit, which is available free of charge from Sun.
The Wireless Toolkit provides an implementation of MIDP together with an emulator that can be customized to look and behave somewhat like a number of real cell phones. It can also be used in conjunction with a third-party emulator that allows you to see how your MIDlets would behave on handhelds that are based on PalmOS. It is not, however, a complete development enviroment, because it does not provide an integrated editor to allow you to create, view, and modify source code. Consequently, if you want to use the Wireless Toolkit as part of a complete development cycle, you will need a text editor or IDE to manage the source code. At the time of writing, the Wireless Toolkit can be installed to integrate with Forte for Java, which is available for download from Sun's web site, and Borland JBuilder, but any IDE will do.
Related Reading
J2ME in a Nutshell
The first step when using the Wireless Toolkit is to create a project, which manages the source code, classes, and resources corresponding to a MIDlet suite. To do this, start the
KToolbar and press the New Project button to open the New Project dialog, which is shown in Figure 3-5. For this example, the name of the MIDlet's main class should be
ora.ch3.ExampleMIDlet, and the project name can be anything you like.
When you press the Create Project button in the dialog, the Wireless Toolkit opens another window, shown in Figure 3-6; it contains a set of tabs that allow you to provide the attributes used to generate the manifest for the MIDlet's JAR and the JAD file. You can edit these attributes by clicking the cell that you want to change and typing the new value. The fields on the Required tab contain the attributes shown in Table 3-2 that are marked as mandatory. Most of the values supplied by default can be used without modification. For example, the
MIDlet-Name field (which is actually the name that will be used for the MIDlet suite, not for any individual MIDlet) matches the project name, and the name of the JAR that will be created is also derived from the project name. The only field you might want to change on this tab is
MIDlet-Vendor, which is initially set to
Sun Microsystems by default.
To define the MIDlets that should be included in the MIDlet suite, select the MIDlets tab. Initially, this contains a single row whose content is constructed from the name of the project. In this example, the suite contains a single MIDlet called
ExampleMIDlet in the package
ora.ch3, so you should press the Edit button and edit the values for the
MIDlet-1 attribute on this tab so that it looks like this:
In this example, the name assigned to the MIDlet matches the class name (ignoring the package prefix), but this need not be the case. Notice also that although the class name is specified in the usual way, with the parts of the name separated by periods, the location of the icon is specified as a filename, in which the path components are separated by a "/" character. If an icon is present, an absolute pathname must be provided here. If the MIDlet does not have an associated icon, this field should be left blank.
For a MIDlet suite with more than one MIDlet, you add an extra line for each MIDlet. It is important that consecutive numbers are used in the key field, so the next MIDlet to be added in this example would need to have the key
MIDlet-2. Other required class files must be included in the JAR, but they should not be included in the MIDlets list.
For this example, we are also going to use a user-defined attribute. A user-defined attribute is a private attribute that can be set in the manifest and/or the JAD; its value can be retrieved at runtime by any MIDlet in the MIDlet suite. These attributes provide a mechanism similar to the setting of system properties in J2SE and allow the operation of the MIDlet to be customized without the need to recompile source code. In this example, we'll use a user-defined attribute to specify the length of a timer. To set the value of the attribute, select the User Defined tab and press the Add button. In the dialog box that appears, supply the property name as
Timer-Interval and press OK. This creates a new entry in the table on the User Defined tab. Click in the Value cell, and type the required value, which, in this case, should be 3000. The property name is case-sensitive and, to avoid confusion with reserved attribute names, should not begin with "MIDlet-". The property value is always a string that is interpreted by the MIDlet. In this case, it represents the timer interval in milliseconds, so the value given here results in a timer that has a three-second interval. You'll see shortly how the MIDlet retrieves the values of user-defined attributes.
This completes the setting of the MIDlet's attributes. To save them, press the OK button at the bottom of the dialog. You can change these settings (perhaps to add extra MIDlets) at any time by pressing the Settings . . . button on the main KToolbar window, which is shown in Figure 3-7.
The next step is to place the source code and the icon for the MIDlet where the Wireless Toolkit can get access to them. Most IDEs allow you to choose where your project source files are kept, but the Wireless Toolkit uses a fixed filesystem layout for each project, based beneath the directory in which the Toolkit was originally installed. The name of the top-level directory for a project is derived from the name given to the project when it was created. If, for example, you installed the Windows Toolkit in the directory c:\J2MEWTK, all the files for the
Chapter3 project need to be placed below the directory c:\J2MEWTK\apps\Chapter3. When the
Chapter3 project was created, the toolkit created the following four directories below the main directory for the project:
Before building the project, you need to place the appropriate files in the src, res and lib subdirectories. This example has one source file and a single icon, which can both be found in the directory ora\ch3 of the source code for this book. The package structure used by the MIDlet must be reflected in the directory layout as seen by the Wireless Toolkit, as it would be by an IDE. Therefore, to install the files where the Wireless Toolkit can use them, you should copy them as follows, creating the ora\ch3 subdirectory beneath both the src and res directories while doing so:
Once the files have been placed in the correct directories, the next step is to build the project by pressing the Build button on the KToolbar main window. The build process performs the following steps:
Creates a tmpclasses directory below the main directory, compiles all the source files below the src directory, and places the class files beneath tmpclasses, having regard to the package hierarchy. Thus, for example, the class files for the MIDlet
ora.ch3.ExampleMIDlet would be placed in the directory c:\J2MEWTK\apps\Chapter3\tmpclasses\ora\ch3.
Creates a classes directory below the main directory and runs the preverifier on all of the classes found below tmpclasses, placing the verified class files below the classes directory in a directory layout that again reflects the package hierarchy. The verified ExampleMIDlet classes would, therefore, end up in c:\J2MEWTK\apps\Chapter3\classes\ora\ch3.
Creates the manifest file and the JAD file and places them in the bin directory.
TIP: The source code for this book is actually stored in two different directory hierarchies, one for standard IDEs, the other for the J2ME Wireless Toolkit. This example showed you how to create a project from scratch using existing source files. A quicker way to use the book's source code is to copy the content of the directory wtksrc into c:\J2MEWTK\apps. This will give you subdirectories called Chapter3, Chapter4, etc., that contain all the source code and resources for each chapter's examples in the format expected by the J2ME Wireless Toolkit. To use each set of examples, select Open Project on the KToolBar main screen instead of Create Project, and then select the project from the dialog box that appears.
At this stage, the JAR file has not been created, but you can nevertheless test the MIDlet suite by selecting an appropriate target device on the KToolbar main window and pressing the Run button. This loads the MIDlet classes, its resources, and any associated libraries from the classes, res, and lib subdirectories. If you select the default gray phone and press the Run button, the emulator starts and displays the list of MIDlets in this suite, as shown in Figure 3-8.
When the MIDlet suite is loaded, the device's application management software displays a list of the MIDlets that it contains and allows you to select the one you want to run. In this case, even though the suite contains only one MIDlet, the list is still displayed, as shown in Figure 3-8. Given the current lack of security for MIDlets imported from external sources, it would be dangerous for the device to run a MIDlet automatically, and, by giving the device user the chance to choose a MIDlet, it allows him the opportunity to decide not to run any of the MIDlets if, for any reason, they are thought to be a security risk or otherwise unsuitable. It is not obvious, though, on what basis such a decision would be made, since the user will see only the MIDlet names at this stage, but requiring the user to confirm that a MIDlet should be run transfers the ultimate responsibility to the user. In this case, the device displays the MIDlet name and its icon (the exclamation mark) as taken from the
MIDlet-1 attribute in the manifest file. The device is not obliged to display an icon, and it may use its own icon in preference to the one specified in the manifest.
When you run the MIDlet suite this way, the Wireless Toolkit compiles the source code with the option set to save debugging information in the class files, and it does not create a JAR file. If you want to create a JAR, you can do so by selecting the Package item from the Project menu. This rebuilds all the class files without debugging enabled, which reduces the size of the class files, a measure intended to keep the time required to download the JAR to a cell phone or PDA as small as possible. It also extracts the content of any JARs or ZIP files it finds in the lib subdirectory and includes them in the MIDlet JAR, after running the preverifier over any class files that it finds in these archives. The JAR can be used, along with the JAD file, to distribute the MIDlet suite for installation into a device over a network, as will be shown in the later section "Delivery and Installation of MIDlets.
Further information on the Wireless Toolkit and other MIDlet development environments can be found in Chapter 9.
Now let's look at the implementation of the
ExampleMIDlet class you have just built and packaged with the Wireless Toolkit. This simple MIDlet demonstrates the lifecycle methods that were described in the earlier section "MIDlet Execution Environment and Lifecycle, and it also illustrates how the MIDlet's foreground activity interacts with background threads, as well as how to create and use timers. The code for this example in shown in Example 3-1. For clarity, the timer-related code has not been included in the code listing; you'll see how that works when timers are discussed later in this chapter.
Example 3-1: A Simple MIDlet
package ora.ch3;
import java.util.Timer;
import java.util.TimerTask;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class ExampleMIDlet extends MIDlet {
// Flag to indicate first call to startApp
private boolean started = false;
// Background thread
private Thread thread;
// Timer interval
private int timerInterval;
// Timer
private Timer timer;
// Task to run via the timer
private TimerTask task;
// Required public constructor. Can be omitted if nothing to do and no
// other constructors are created.
public ExampleMIDlet( ) {
System.out.println("Constructor executed");
// Get the timer interval from the manifest or JAD file.
String interval = getAppProperty("Timer-Interval");
timerInterval = Integer.parseInt(interval);
System.out.println("Timer interval is " + interval);
protected void startApp( ) throws MIDletStateChangeException {
if (!started) {
// First invocation. Create and start a timer.
started = true;
System.out.println("startApp called for the first time");
startTimer( );
} else {
// Resumed after pausing.
System.out.println("startApp called following pause");
// In all cases, start a background thread.
synchronized (this) {
if (thread == null) {
thread = new Thread( ) {
public void run( ) {
System.out.println("Thread running");
while (thread == this) {
try {
System.out.println("Thread still active");
} catch (InterruptedException ex) {
System.out.println("Thread terminating");
thread.start( )
protected void pauseApp( ) {
// Called from the timer task to do whatever is necessary to pause
// the MIDlet.
// Tell the background thread to stop.
System.out.println("pauseApp called.");
synchronized (this) {
if (thread != null) {
thread = null;
protected void destroyApp(boolean unconditional)
throws MIDletStateChangeException {
// Called to destroy the MIDlet.
System.out.println("destroyApp called - unconditional = "
+ unconditional);
if (thread != null) {
Thread bgThread = thread;
thread = null; // Signal thread to die
try {
bgThread.join( );
} catch (InterruptedException ex) {
stopTimer( );
// Timer code not shown here
This simple MIDlet does two things:
The code listing shows the implementation of the MIDlet's constructor and its
startApp( ),
pauseApp( ) and
destroyApp( ) methods. A MIDlet is not required to do anything in its constructor and may instead defer initialization until the
startApp( ) method is executed. In this example, the constructor prints a message so that you can see when it is being executed. It also performs the more useful function of getting the interval for the timer that will be used to change the MIDlet's state. It is appropriate to put this code in the constructor because this value needs to be set only once. The timer value is obtained from the
Timer-Interval attribute that was specified in the settings dialog of the Wireless Toolkit and subsequently written to the JAD file. Here is what the JAD file created for this MIDlet suite actually looks like:
MIDlet-1: ExampleMIDlet, /ora/ch3/icon.png, ora.ch3.ExampleMIDlet
MIDlet-Jar-Size: 100
MIDlet-Jar-URL: Chapter3.jar
MIDlet-Name: Chapter3
MIDlet-Vendor: J2ME in a Nutshell
MIDlet-Version: 1.0
Timer-Interval: 3000
A MIDlet can read the values of its attributes using the following method from the
MIDlet class:
public final String getAppProperty(String name);
This method looks for an attribute with the given name; it looks first in the JAD file, and then, if it was not found there, in the manifest file. Attributes names are case-sensitive and scoped to the MIDlet suite, so every MIDlet in the suite has access to the same set of attributes. The
getAppProperty( ) method can be used to retrieve any attributes in the JAD file or the manifest, so the following line of code returns the name of the MIDlet's suite, in this case
String suiteName = geAppProperty("MIDlet-Name");
The timer interval for this MIDlet is obtained as follows:
String interval = getAppProperty("Timer-Interval");
timerInterval = Integer.parseInt(interval);
Once the value in the form of a string has been retrieved, the next step is to convert it to an integer by calling the
parseInt( ) method. If the
Timer-Interval attribute is not included in the JAD file or manifest (or if its name is misspelled),
getAppProperty( ) returns
null, and the
parseInt( ) method throws an exception. A similar thing happens if the attribute value is not a valid integer. Notice that the constructor does not bother to catch either of these exceptions. The main reason for catching an exception is to display some meaningful information to the user and possibly allow recovery, but, strictly speaking, the MIDlet is not allowed to use the user interface in the constructor, so attempting to post a message would not necessarily work. The most appropriate thing to do in a real MIDlet is to install a default value for the timer interval and arrange to notify the user from the
startApp( ) method, when access to the user interface is possible. In this simple example, we allow the exception to be thrown out of the constructor, which causes the MIDlet to be destroyed. Additionally, the version of MIDP in the Wireless Toolkit does, in fact, display the exception on the screen, but vendor implementations are not bound to do so.
Once the constructor has completed execution, the device eventually calls the MIDlet's
startApp( ) method, which allocates any resources that the MIDlet needs. The
startApp( ) method is also called when the MIDlet is resumed after being in the Paused state. In that case, however, it should allocate only the resources that were released by
pauseApp(). A boolean variable called
started, which is
false only when
startApp( ) is entered for the first time, is used to distinguish these two cases:
started is
startApp( ) creates and starts the MIDlet timer and the MIDlet's background thread.
started is
startApp( ) does not need to concern itself with the timer, because it is not canceled by the
pauseApp( ) method. It does, however, create a new background thread, because the original thread will be stopped when the MIDlet is paused.
Since the timer is going to be active throughout the lifetime of the MIDlet, it could have been allocated in the constructor. We deferred creating the timer until
startApp( ) executes for the first time, however, because it isn't actually needed until that point; it is better, in an environment with such limited memory, to delay allocating resources until they are needed. The decision whether to commit resources in the constructor or in the
startApp( ) method depends on the MIDlet and must therefore be made on a case-by-case basis.
pauseApp( ) method is relatively simple. Its job is to release any resources that the MIDlet does not need while it is not in the Active state. The MIDlet is making use of only two resources:
Clearly, we can't stop the timer when the MIDlet is paused, because the timer is responsible for resuming it later. Therefore, the only resource the
pauseApp( ) method can release is the background thread, by arranging for it to stop execution.
How is the
pauseApp( ) method going to stop the background thread? The J2SE
Thread class has two methods that might help:
stop( ) and
interrupt( ). Neither of these methods is available in the CLDC version of
Thread, however, so it is not possible to act directly on the background thread to stop it. Instead, we use a common mechanism, a shared variable that the thread inspects from time to time to find out whether it has been asked to stop. In this case, the MIDlet class keeps a reference to the
Thread instance in a variable called
thread. In order to stop the thread, the
pauseApp( ) method sets this variable to
null, while the main loop of the background thread checks its value on each pass:
public void run( ) {
System.out.println("Thread running");
while (thread == this) {
try {
System.out.println("Thread still active");
} catch (InterruptedException ex) {
System.out.println("Thread terminating");
You'll notice that this code actually checks not whether the
thread variable is
null, but whether it is pointing to the background thread itself. This prevents a race condition in which the
pauseApp( ) method clears
thread to
null, and the timer thread resumes the MIDlet before the background thread restarts following the
sleep( ) call and checks its value. In this case, the
startApp( ) method has started a new thread and stored its reference in
thread, which therefore will not be
null when the previous code checks it.
Finally, the
destroyApp( ) method needs to stop the background thread and stop and release the timer. The thread can be stopped just as it is in the
pauseApp( ) method. However,
destroyApp( ) also waits for the thread to terminate so that it can guarantee that the MIDlet is not using any resources when it returns. It does this by calling the
Thread.join( ) method, which blocks until the thread terminates (and returns immediately if it has already terminated). The
stopTimer( ) method, which
destroyApp( ) calls to stop and release the timer, is described in the next section.
If you now launch the MIDlet from the emulator, you'll see the results in the Wireless Toolkit's console window, an extract of which follows:
Constructor executed
Timer interval is 3000
startApp called for the first time
Timer started.
Thread running
Thread still active
Thread still active
Timer scheduled
>> Pausing MIDlet
pauseApp called.
Thread still active
Thread terminating
Timer scheduled
>> Resuming MIDlet
startApp called following pause
Thread running
As you can see, the constructor is executed first; it reads the value of the timer interval from the JAD file. Then
startApp( ) is called, and it detects that it is being called for the first time and starts both the timer and the background thread. The "Thread running" and "Thread active" messages are printed by the background thread itself and show that the thread executes its loop twice before the timer fires. The code that executes when the timer expires, which will be shown in the next section, alternately pauses and resumes the MIDlet. In this case, as you can see,
pauseApp( ) is called, which signals the background thread to stop running; the "Thread terminating" message indicates that the thread detects that it has been told to stop. Three seconds later, the timer expires again and resumes the MIDlet, causing its
startApp( ) method to be invoked again to recreate the background thread. This process continues through two cycles, at which point the timer code destroys the MIDlet.
Code to be executed when a timer expires should be implemented as a
TimerTask and scheduled by a
Timer. The
Timer class provides the ability to execute sequentially one or more
TimerTasks in a dedicated background thread. Usually, a MIDlet creates a single
Timer to schedule all its
TimerTasks, but it is possible to have more than one
Timer active, each running its assigned
TimerTasks in its own thread.
TimerTask is an abstract class with three methods:
public abstract void run( );
public boolean cancel( );
public long scheduledExecutionTime( );
You create a unit of work to be scheduled by a
Timer by subclassing
TimerTask and implementing the
run( ) method. You can schedule the
run( ) method to be executed just once or to be executed repeatedly at either a fixed interval or a fixed rate. You can use the
cancel( ) method to stop future execution of a specific
TimerTask. You may invoke it from the
run( ) method, in which case the current execution of the task is allowed to complete, or you make invoke it from somewhere else. This method returns
true if the task was scheduled to run either once or repeatedly and has been canceled; it returns
false if the task was not associated with a
Timer or if it had had been scheduled to be run once and has already run. The
scheduledExecutionTime( ) method gets the time at which the task was most recently executed by its associated
Timer. If called from within the
run( ) method, it returns the time at which the
run( ) method began execution. The value returned by this method is the number of milliseconds since midnight, January 1, 1970, which is the same as that returned by the
currentTimeMillis( ) method. If this method is called before the task is scheduled for the first time, its return value is undefined.
Timer class has two methods that can be used to arrange for a task to be run exactly once:
public void schedule(TimerTask task, Date time);
public void schedule(TimerTask task, long delay);
The first of these methods schedules the task at the given time or as soon as possible afterwards; the second runs the task when a given time interval, specified in milliseconds, has passed. There are four methods that schedule a task for repeated execution:
public void schedule(TimerTask task, Date time, long period);
public void schedule(TimerTask task, long delay, long period);
public void scheduleAtFixedRate(TimerTask task, Date time, long period);
public void scheduleAtFixedRate(TimerTask task, long delay,
long period);
The difference between these methods is that the first two apply a fixed delay between successive executions of the task, and the last two attempt to execute the task at a fixed rate. In both cases, the desired interval between task executions is given by the
period parameter. Figure 3-9 shows how fixed-delay and fixed-rate scheduling differ.
In this example, task A is scheduled to run once every second; task B runs once, starting 900 milliseconds along the time line shown in the diagram. Task A first runs at T+0, followed by task B, which begins its execution at T+900ms. Task B takes 200 milliseconds to complete, however, which means that it is still running at T+1 second, when task A is supposed to run for the second time. Since a
Timer can schedule only one
TimerTask at a time, the execution of task A is delayed until task B finishes. Task A's second run begins, therefore, at T+1100ms. The difference between fixed-delay and fixed-rate scheduling is what happens as a result of this delay:
In fixed-rate scheduling, the next execution of task A is scheduled relative to the time its previous execution should have started. In this case, task A should have begun execution at T+1 second. Under fixed rate scheduling, it will next run at T+2 seconds, as it would have had task B not delayed it.
With fixed-delay scheduling, the next execution of task A is timed relative to the time its previous execution actually took place. Since task A last ran at T+1100ms, it will next run at T+2100ms, then at T+3100ms, and so on.
With fixed-delay scheduling, therefore, any delay affects all future executions of the task. With fixed-rate scheduling, however, an attempt is made to "ignore" the delay and schedule the task again where it would have run had there been no delay.
In some cases, additional executions of a fixed-rate task may be required to ensure that it runs the correct number of times when viewed over a long period. When this is necessary, the task may be run two or more times in succession to catch up with the number of times that it should have been run. For example, fixed-rate scheduling would be appropriate if you were using a timer to trigger redrawing the second hand of a clock displayed on the screen. Delayed execution of the redrawing task would cause the second hand to move more slowly, but the extra executions would ensure that it eventually moved forward to catch up with the real time. By contrast, using fixed delay execution in this case would result in the clock losing time that it would never make up, because execution delays are never corrected.
You may be able to reduce timing delays by using more than one
Timer and dividing tasks among the
Timers, because each
Timer uses its own
Thread. This only works, however, if the platform has more than one processor (which is unlikely in a J2ME environment), or if it has preemptive thread scheduling and chooses to suspend the thread of the
Timer scheduling the long-running task B in favor of the thread for task A's
Timer. The most reliable way to obtain predictable timer scheduling, however, is to ensure that code to be executed by a
TimerTask executes as quickly as possible and does not block.
TimerTask, the
Timer class has a
cancel( ) method:
public void cancel( );
This method cancels all the
TimerTasks associated with the
Timer. The
Timer's thread stops executing when it has no more
TimerTasks to be scheduled and there are no live references to it.
Example 3-2 shows the timer-related code for our example MIDlet.
Example 3-2: Using a MIDlet Timer
// Starts a timer to run a simple task
private void startTimer( ) {
// Create a task to be run
task = new TimerTask( ) {
private boolean isPaused;
private int count;
public void run( ) {
// Pause or resume the MIDlet.
System.out.println("Timer scheduled");
if (count++ == 4) {
// Terminate the MIDlet
try {
} catch (MIDletStateChangeException ex) {
// Ignore pleas for mercy!
ExampleMIDlet.this.notifyDestroyed( );
if (isPaused) {
System.out.println(">> Resuming MIDlet");
ExampleMIDlet.this.resumeRequest( );
isPaused = false;
} else {
System.out.println(">> Pausing MIDlet");
isPaused = true;
ExampleMIDlet.this.pauseApp( );
ExampleMIDlet.this.notifyPaused( );
// Create a timer and schedule it to run
timer = new Timer( );
timer.schedule(task, timerInterval, timerInterval);
System.out.println("Timer started.");
// Stops the timer
private void stopTimer( ) {
if (timer != null) {
System.out.println("Stopping the timer");
timer.cancel( );
startTimer( ) method, which is called during the first invocation of
startApp( ), creates a
TimerTask and schedules it to be run by a
Timer object with the initial delay and repeat period given by the
Timer-Interval attribute obtained from the application descriptor. The
stopTimer( ) method is called from
destroyApp( ). It cancels the
TimerTask and the
Timer by calling the
cancel( ) method.
The code that is executed when the timer expires is worth looking at because it demonstrates how to control the lifecycle of a MIDlet. The intent of this code is to pause the MIDlet if it is active when the timer expires and resume if it is paused. However, there is no method that allows a MIDlet to find out whether it is in the Paused state, so the timer code has to retain this state for itself using an instance variable called
isPaused. The code used to suspend the MIDlet looks like this:
isPaused = true;
ExampleMIDlet.this.pauseApp( );
ExampleMIDlet.this.notifyPaused( );
notifyPaused( ) method tells the MIDlet scheduler that the MIDlet wants to be moved into the Paused state. As stated earlier, when the MIDlet calls this method, it is assumed that it is ready to be suspended, so its
pauseApp( ) method is not called to give it a chance to release resources. For this reason, the timer code calls the MIDlet's
pauseApp( ) method directly before suspending it. Moving a MIDlet to the Paused state simply means that it no longer has access to the screen and so does not receive user interface events in response to key presses or pointer movements. Timers and background threads belonging to a suspended MIDlet continue to be scheduled, provided that they are not stopped by the MIDlet itself in its
pauseApp( ) method.
Moving the MIDlet from the Paused state to the Active state is a little easier:
ExampleMIDlet.this.resumeRequest( );
isPaused = false;
resumeRequest( ) call notifies the scheduler that the MIDlet would like to be made Active. In response to this, the MIDlet's
startApp( ) method will be called at some future time to allow it to reallocate resources that were released when it was paused. If another MIDlet is currently in the foreground, the resumed MIDlet has to wait until the foreground MIDlet is paused or terminates before it becomes eligible to become the foreground MIDlet and recover use of the screen and input devices.
Finally, after two suspend/resume cycles are completed, the timer code destroys the MIDlet by calling
notifyDestroyed( ):
// Terminate the MIDlet
try {
} catch (MIDletStateChangeException ex) {
// Ignore pleas for mercy!
ExampleMIDlet.this.notifyDestroyed( );
As is the case with
notifyPaused( ), the MIDlet's
destroyApp( ) method is not invoked as a result of a call to
notifyDestroyed( ), so the timer code explicitly invokes it in order to allow the MIDlet to release its resources. Because this is an involuntary termination, the
destroyApp( ) method is called with its
unconditional argument set to
true. However, care is taken to catch a
MIDletStateChangeException in case the
destroyApp( ) method ignores this argument. It is important to note that
notifyDestroyed( ) does not actually terminate the MIDlet or any of its threads; it simply arranges for the MIDlet never to be scheduled as the foreground MIDlet and removes it from the list of active MIDlets. It is the MIDlet's responsibility to stop its active threads and timers in its
destroyApp( ) method. Failure to do this may cause the Java VM to continue running and consuming memory when it has no useful work to do, which is unacceptable given the resource constraints of the typical MIDP device.
In the final installment next time, learn delivery and installation of MIDlets.
Kim Topley has more than 25 years experience as a software developer and was one of the first people in the world to obtain the Sun Certified Java Developer qualification.
View catalog information for J2ME in a Nutshell
Return to ONJava.com.
Copyright © 2009 O'Reilly Media, Inc.


text:
Gov. Scott Walker said the job-creation agency he pushed to create will be more accountable after a series of problems and organizational shakeups.
The Wisconsin Economic Development Corp. didn't assign staff members to track about $69 million in state loans, agency leaders have said, calling it a "misstep." More than $12 million of those loans are now at risk because companies are behind on their repayments, news reports have indicated.
WEDC's new leaders -- handpicked by Walker after previous managers resigned in recent months -- said they were hiring an outside financial institution and accounting firm to provide oversight of the loan programs and financial records.
"We want to be accountable (to) the taxpayers, but we also want to be accountable for the board of directors," Walker said. "What sorts of decisions are to be made for the future -- which (loan programs) are truly effective in creating new jobs and which ones are not."
Walker's comments came as he toured show exhibits at a hunting trade show in the Wisconsin Dells.
The WEDC, created in 2011, replaced the former Wisconsin Department of Commerce, which Walker administration officials have said was inefficient and ineffective at job creation.
But problems have plagued the WEDC in recent months.
The agency received criticism for using $10 million in U.S. Housing and Urban Development money without federal authority to do so, and offering state tax credits to a company that was competitively bidding for a state contract, WISC-TV reported previously.
Paul Jadin, the former WEDC chief executive, resigned Nov. 1 to take a job at Thrive, the economic development group in south-central Wisconsin.
"We've come in and we've had stability at the top -- much longer than they had (at the former Commerce Department)," Walker said. "But, with a new agency, there are some issues to be dealt with, and this is one of those."


text:
April 23, 1968------June 11, 2001.
"Show me a hero and I'll write you a tragedy."
---F. Scott Fizgerald.
What's the difference between Timothy McVeigh's actions and those of his executioner?
Answer: The weapon.
Marytrdom's just another word for nothing left to lose. And Tim had nothing left to lose.
By looking around the Web, I discovered pictures, supposedly of Tim, purporting the ridiculous notion that he is alive and well and back in the US army. Now, I don't know about you, but I haven't heard anything that laughable since those misguided individuals who believe that Tim really didn't die in that Indiana death chamber, but was quickly whisked off for places unknown for activities covert and mysterious.<> I am posting a few pictures featured in that bizarre article. If anyone out there believes for one second that those pictures look anything at all like McVeigh, well, I would strongly suggest getting your eyes tested. Seriously. Here they are for your giggling pleasure:
I'm currently working on an article to accompany these photographs, which, in essence, will be my personal take on the information gleaned from this bizarre article. I suppose the pictures offer some individuals a modicum of hope that, perhaps, McVeigh didn't get poisoned to death on that dark June morning after all. Perhaps he outwitted the executioner and is holed up, laughing hysterically at those who are so certain those three powerful chemicals injected into Tim's leg were no more potent than yellow dye. Personally, I don't believe it for a minute. Those photos look no more like Tim McVeigh than Stephen Jones.
Before you delve any further into this site, please realize that its purpose is not to worship Tim McVeigh, make him into some anti-government martyr, nor is it a forum for a lovesick, obsessed woman to wax lovingly and moan orgasmic-like over the enigma that was Timothy James McVeigh. No, this is most assuredly not the droolings and post-mortem wishes "of something more if only he was still alive." I have received e-mails from irate persons who call this site nothing but "romanticized rubbish" and other terms less-than-endearing.
By the same token, I would be lying out of the side of my mouth if I were to tell you that I wasn't attracted to this man. Yes, Enigmacat was drawn to someone the rest of the world reviled. I wrestled with these feelings for years and, yes, I am fraught with more than a little bit of guilt.
I didn't always feel this way about Timothy McVeigh. Soon after the bombing, I watched a television program that featured the many little kids who were killed or terribly maimed in the tragedy. I watched as a four-year-old boy struggled with a leg prosthesis, as he had lost his leg in the explosion and it broke my heart. There were other horribly burned youngsters and a parade of mothers and fathers who had lost their children in such a senseless manner.
Fear not the reaper, my troubled young friend.
And don't think that your earthly death signaled the end.
The fact is: You'll never again feel great pain.
No dark, looming clouds and no torrents of rain.
You'll have bountiful presents in heaven this year.
Such as laughter and happiness at long last, my dear.
As for those who are hoping you're burning in hell.
Just forget them, for they didn't know you too well.
I'm lighting a candle for you on your day.
But I'm finding it hard to know what I should say.
As your parents and sisters grieve that you are gone,
They're still struggling along, faces tear-streaked and wan.
Give them time, Tim, to heal and to always be strong.
And to realize that heaven is where you belong.
Anniversaries hurt when a loved one is lost.
It extracts a high price---it's a terrible cost.
God forgives you completely for what you have done.
Now let loose up there Tim, and with Jesus be one.
It's okay to seek peace---it's been so very long,
So today, on your birthday, I'll sing a sad song.
I had always been staunchly opposed to capital punishment, but this case gave me serious pause. I remember saying to my mother, as I struggled desperately for the right words, "Mom, I feel awful. Here I am, an anti-death penalty activist and I'm thinking that the person or persons who did this awful thing should fry for their crime." I started to cry and felt like hypocrisy personified. It took me several months to return to my original opinions about state-sanctioned murder, but I went through hell before that happened.
So when did my hatred for Tim McVeigh end and my compassion for him begin? I guess that if I had to name one thing, it would be that I had read many articles on McVeigh and the bombing and I began to see, not an "All-American Monster" but rather, an emotionally flat, suicidal young man who felt he had nothing more to lose. And so I began writing to him, to try and offer solace, a shoulder on which to metaphorically lean and a deep understanding of how an illness like post-traumatic stress disorder can transform a kind and loving boy into a cold and calculating killer.
Tim McVeigh was so much more than a destroyer of 168 lives. But, by choosing the tragic path he did, Tim unwittingly assured himself to be "the most hated man in America."
Yes, I cared a great deal about the man----I cared a lot and put up this website both for those who share similar sentiments, as well as naysayers who mistakenly think that I have no compassion or caring for McVeigh's victims. Nothing can be further from the truth, but it seems as if they have been offered an exemplary status, based on their tremendous grief. They don't need me----the world cradles them in its arms. I know that there are those who will pounce upon my head for saying that, but I have to be honest. Yes, many lost their lives in the blast, but then, in a very odd way, so did Tim. You say that without McVeigh there would never have been an Oklahoma City. The truth of the matter is, were it not for the Gulf War, this tragedy would not have occurred. Forget Waco---the bombing was, as has been documented, Tim's antidepressant.
Anyone is welcome here and you can write whatever you want in the guestbook. I have received many encouraging e-mails from people, likely as alienated as Tim or as I, who agree that, yes, he did something heinous, but it is possible to separate the act from the perpetrator.
I'm sorry too, Tim that your name is being sullied at the moment.
Do you know what some have wrought from your sad and tragic life?
Not love, not knowledge, just pain and guilt and strife.
I guess one can't grow flowers where only pavement's found.
So what the hell am I doing here? You know I'm not that sound.
I'm sorry, Tim and just I hate to have to let you know,
That atop your precious ashes, not a thing can ever grow.
The only explanation I can offer for this sadness,
Is that you seem to unleash all kinds of fear and hate and madness.
I wish I could regale you with stories that ring true.
How much I have wished that I was with you too.
You knew ,oh too well, that life was often cruel.
That everything we needed wasn't ever learned at school.
I know I must live on, even though it seems too much.
Those I'd thought were friends, have gotten out of touch.
If we're all but cheap Tim groupies, then what the hell's the point?
Was all that you believed in left behind you in that joint?
Your hour upon the stage was cut short.
And I feel that you planned it that way.
Then at 7:14 there came this report:
"He's dead. It's the blessed end of Tim McVeigh."
As you lay there, exposed and stripped bare,
Did you tell the priest of your well-hidden remorse?
I know you said nothing to those who were there,
Your regret, it seemed, nobody could ever force.
You greeted your death with both eyes opened wide.
But then, it had always been waiting for you.
I wish that someone could have gotten inside
To find out what lay behind cold eyes of blue.
Enigmacat, 2002.
Timothy McVeigh went to his premature grave as defiant as he lived the last six years of his life. Whether you find that admirable or downright disgusting, you should realize that there is so very much more to this young man than either the media or "American Terrorist" can tell us. I am attempting to unravel the enigma and reach the very vulnerable and tragic figure underneath.
I must confess as to being terribly traumatized by this bad news, so much so that I was in a crisis situation. Trying to keep together, I am writing my last letter to him, keeping busy and working on my manuscript. I have talked about the book on this page if you scroll down and I hope that, when he reads my chapter summaries, Timothy McVeigh will harbour a shred of hope that I am presenting the other side of the terrible Oklahoma City bombing. I deeply feel for anyone and everyone who lost someone in the blast, who lives today with sometimes severe physical and psychological traumas, but I do not believe for one minute that, when the three hundred or so survivors watch McVeigh die, they will not only fail to achieve closure, but they are likely to feel even worse than they would if they'd passed up that rather creepy event. I have since learned that, although a number of the onlookers felt a sense of relief when McVeigh died right before their eyes, but many didn't---in fact, some wished they hadn't witnessed the terrible spectre of seeing what happens when a healthy young set of lungs collapse forever.
Right below is a picture of the auditorium, a building which was filled to capacity so that survivors and victims could get a good view of Tim's execution, from beginning to its miserable end. The auditorium was in Oklahoma City and there were over two hundred hungry eyes wanting so-called "justice" to satisfy that emptiness. All of the sickening hoopla surrounding the very public execution was nicknamed "Bloodstock," a fitting word to describe the onslaught of people who descended upon Terre Haute for a "spectacular death concert."
Tim McVeigh mattered to me. I cannot fully explain it and so I just follow my emotional instincts and not attempt to rationalize any of this. McVeigh caused untold misery, but putting him to death does nothing to change that. I watched CNN early this afternoon and felt defeated and beaten. As an anti-death row activist, I did everything in my power to overturn McVeigh's death sentence but it wasn't enough. My opinions and feelings are not shared by most people, but I would hope that no-one begrudges me for standing up for McVeigh. Did I love him in a distant and bizarre way? Perhaps. I would have liked to help him, or at least convince him not to drop his appeals a year ago this past December.
However, I certainly didn't start out feeling compassion and concern for this man. It took me a great deal of soul-searching and prayers before it sunk in that my past beliefs were good ones---good and right. Capital punishment is wrong, wrong, wrong and not only that, it does nothing but destroy yet another family. Still, my anger overtook me when I saw television programs depicting maimed children, children who would never walk again or have normal lives. I looked at that "perpetrator walk picture" and was filled with rage.
No, I have put up this site in order that you may be able to see past McVeigh's extremist views and his violent crime to find an intelligent, but very troubled and misguided man whose life very well may have taken a completely different path. That is the real tragedy of this man. Also, this page speaks out against the death penalty and this provides the backdrop for my dissertations on McVeigh and his wrongful murder. I hope that clears matters up for you. I do not, nor will I ever, support and believe in capital punishment.
Quickly, quietly,
You turned a blessed corner
And finally found peace.
Although I managed to get past the terrible carnage, many hundreds likely never will, but even knowing that, I fervently believe that Timothy McVeigh should not have been executed for his crimes. Somehow I took the long and mysterious journey from disdain to genuine caring for a man who, for all intents and purposes, both felt he had nothing to lose by bombing the Murrah building and who did so in order to be sentenced to death and thus fulfill his suicidal plans. It's sad, really. Anyhow, here is a poem I wrote shortly after the disaster, before culling any positive feelings for McVeigh:
This site will be revamped and will focus on letting Tim McVeigh show the tragic events of his life, a sad one laced with severe bouts of clinical depression and the ways that his problems could have been rectified had someone seen all of the glaring red flags that screamed for love, attention and approval. Tim was, for all intents and purposes, always eager to please. But try as he might, nobody noticed him, not even his own family. To anyone out there who thinks my site is in extremely poor taste, I will reiterate with, "You people are happy as little clams to know that a healthy young man is going to die for his crimes. Revenge rears its ugly head, so please do not claim that killing Tim "serves justice." It merely serves cold-blooded murder.
So, I remain here and will not abandon my search for an American society to realize how inhumane capital punishment is and then eventually get rid of this nefarious practice. If you come back here again, you will discover that I have given McVeigh a kind of "martyr without a cause." This site is dedicated to the pro-death penalty view, as well as examining the life and death of a boy who could have done so much good for the world, but instead, was forced to pay the ultimate price. I have never seen our world through such dark and obscuring shades as I do now.
Tim McVeigh had a little more than four days left to live when I wrote the passages above. His death still haunts me, along with vivid images of people who were actually cheering, hugging and kissing as Tim was having the life drained out of his body. Rejoicing in the death of another is nothing short of obscene. I used to feel very badly for the survivors of the blast and those who had lost loved ones that fateful day in April, 1995, but now my sympathy has been compromised after a lot of them were complaining bitterly that McVeigh "didn't suffer enough." Believe me, he did suffer. Just read my description of what happens to the body during the administration of the lethal injection and you will see what I mean.
Just below is the link where I describe how McVeigh died and ask both survivors, as well as family and friends of those killed that day to read it:
Just below is a photo of a distressed woman who protested McVeigh's execution and is moved to tears upon hearing that he was pronounced dead:
"Never mind what you might of heard about me.
Never mind what you might have seen on the tv."
-----Jann Arden
The table was set
Right after the final meal.
Needles for dessert.
Copyright, 2001 by enigmacat.
Disintegration Haiku
Tim's at the mirror.
Heaves a chair at it's smugness.
Then shatters to bits.
Copyright, 2002 by enigmacat.
things to get another stay of execution. Even if it was, the fact remains is that he said it.
Please try to keep an open mind, no matter how difficult that is. It is not up to anyone to put someone to death. In Canada, we reject the death penalty and are chastised for being too "soft on crime." No, we are abiding the law, both the laws of the land and the words of God. Many think that, since a murderer has killed, then the same should be vested upon the killer. It's just not that black and white. It is not up to anyone to decide to execute a criminal. We have to look into our own dark hearts and realize that killing is wrong, wrong, wrong. Revenge does not give people just cause to take a life. Even Tim's. You hate him because he seems to taunt survivors and says he's not remorseful. That's what Tim's all about: He's got such a high and impenetrable wall built up in front of him that nobody knows what he truly feels. There's a saying that "Once a Catholic, always a Catholic." There is some validity to that. I've heard from my sources who run the "Death Row Speaks" site that Tim has been more receptive of discussing religion. If he would just beg Jesus to forgive him, he'd be saved. He may be sent to Purgatory first, but God won't wreak vengeance on him. That's another reason we should never kill. We aren't all powerful and all-knowing. Just try to see things from the perspective of one who feels a very bizarre attraction to a man who's universally hated and reviled. If that makes me a twisted lunatic, well, believe me, I've heard worse.
So, exactly what am I going to do with this site? I guess I've nominated myself as the voice of temperament, one of the very few who will mourn McVeigh when he's given the lethal injection very soon. Is he frightened at all, or are his suicidal tendencies bring him a warm feeling of relief that he'll be gone before long.
This site is not only for those of you out there who share my beliefs concerning the futility of clamouring for Timothy's blood. It is for others who oppose the death penalty as much as I do. We have to get together and figure out a reasonable way to deal with this extremely important issue. I live in Canada, which, fortunately, has banned the death penalty---for now. Those of you in the United States, who seem to be most prevalent on the Internet, need to read this. I know that many of your states support this atrocity, and I was saddened to see New York reinstate it recently. I live in constant fear that our country, wracked by pressure to reinstate this barbarism, will cave in. I would organize protests and take part in acts of civil disobedience to see that this never happens. Don't you Americans realize that as long as you support the death penalty you will never truly be free?
While watching an episode of "Law and Order" recently, I became enraged at District Attorney McCoy's attitude. He had welcomed the return of the lethal injection several times over the last few seasons, but at the end of the program, Adam Schiff, the Big Cheese of the courtroom who never leaves his office, was quoted as saying, "Enter at your own risk" as the subject of Canada having gotten rid of the death penalty came up. Well, listen, we have much, much stricter laws here with regard the purchase of firearms, and furthermore, there's no Charlton Heston-like jerk touting the virtues of the "Freedom to suspect he was a little of both.
The picture below is of a captured McVeigh being led on that infamous "perpetrator walk" after it was determined that he was somehow involved in the bombing. Like everyone else, I have grown weary of that particular shot----it shows a stern and angry Tim McVeigh and is something that will linger for many years, not just for the survivors and those left without their children and loved ones. No, I do not believe that there is a single individual in North America, not to mention the rest of the world, who hasn't seen that image at least once. So right below I am posting another angle of McVeigh, as the FBI agents escort him to jail. Check it out:
Eventually, I hope to write an accurate, painful fictional effort that will be only thinly disguised. Perhaps then, people will be able to let go of their rage and feelings of vengeance on those who walk that sad last mile. As this site gets further along, I will post the outline of my book, which is tentatively called, "In the Presence Of Mine Enemy." I've already had one book published, a nonfiction effort on my life with a debilitating illness, so I'm hoping my publisher likes the manuscript when it's done.
The articles below concern the situation that Timothy McVeigh has found himself in. I have a confession to make and that is that I was extremely angry, vindictive and sickened when I heard about this tragic event, in which 168 people died, including young children in the government-run daycare centre on the first floor.
As my newspaper article attests, I have forgiven Timothy McVeigh and feel that he is both remorseful and feels that his crimes shouldn't go without the punishment of a lethal injection. That is not the answer, only humanity's hew and cry for revenge and a misguided sense of "justice." Only when we are able to see past the rage and the vigilante temperament, will we grow as a society and develop that rare quality of mercy.
I'd like to think that many of you would have worn this t-shirt on June 11th to protest the death penalty and stand up for life---any life.
On the other side of the coin are the "Execution Commemorative" shirts, which are not only in extremely poor taste, but show just how much of a crass carnival Tim's execution was. This picture is, for all intents and purposes, nothing short of repulsive:
Hide in your shell
'Cos the world is out to bleed you
For a ride. What will you gain,
Making your life a little longer?
Heaven or hell--
Was the journey cold that gave you eyes of steel?
Sheltered behind, painting your mind,
And playing joker.
------Supertramp, "Hide In Your Shell"
I am going to show you how an adorable, innocent little boy was slowly and insidiously transformed into a very disturbed young man. Wracked with rage and emotionally damaged, that happy kid turned down a desolate road to emotional oblivion.
Below are two links to new poems pages. Several of you asked for more of these, so here they are. I have four completed so far:
I'm dead now. Did my victims find closure?
It's my fervent belief they did not.
Those who sat watching me take my last breath,
Most likely found not even one bit of peace.
I'm dead now. My government thinks it has won.
How I loathed it's hypocrisy and lusting for blood.
I wish that I still had a voice and some spittal.
Do those people in charge not smell death on their hands?
I'm dead now. I guess that I lived a full life.
But reaped no rewards from its rich treasure trove.
Still, I've garnered much fame and held court for six years.
So if death was the price, it was worth it.
What I did was heroic and my death will be avenged,
You sit there all primped and preened, sure that you're right,
You painted my portrait in grey and pastels,
No bright, screaming hues in your gallery of shame.
What are you gaining? Must I dance to your tunes?
You've traded my actions for hyperbole, have you not?
So I turn in my grave, do a dance for you all.
As you use my brave actions to further your gains.
How I hate you and spit upon all that is wrong.
Your words cost me many due accolades.
My death spawned hundreds of essays of drivel.
I guess you all shine in my light: Fame By Proxy.
Don't you get it, my doubters? Am I that pathetic?
I have spent quite a bit of time revamping this site, but there is still very much to do. I hope that those of you who are interested in this site will keep coming back as new links are added. I have scanned all of the pictures from "American Terrorist" and they will be illustrating my treatment and the first act of my screenplays.
The manuscript is coming along. I've finished the research and have an outline written. There's a great deal more to do, but I am determined to finish it before the summer. It's a novel that juxtaposes the troubled life of a young psychiatric patient with the plight of a young man on death row. Believe it or not, there are many similarities----many nasty features that transform both the hospital and the death row unit into modern-day concentration camps. Soon I will post the chapter outlines and will eventually put a couple of the chapters on this site.
It's rather puzzling why some search engines and FFA sites deny my request to be posted on them, citing "questionable content" as the reason. Well, what can I say? This ain't a fan site for followers of "The Brady Bunch," but it's not "questionable" either. Oh well, I guess the Internet is still pretty conservative.
Hide in your shell
'Cos the world is out
To bleed you for a ride.
What will you gain,
Making your life a little longer?
Heaven or hell,
Was the journey cold
That gave you eyes of steel?
Shelter behind, painting your mind
And playing joker.
The "Death Penalty As Unconstitutional" SiteRing
This site owned by
Now the sun's gone to hell
And the moon's riding high
Let me bid you farewell
Every man has to die
But it's written in the starlight
And every line on your palm
We're fools to make war
On our brothers in arms.
"Brothers In Arms," By Dire Straits.
"An eye for an eye leaves us all blind."
The Rev. Martin Luther King, Jr.
Capital punishment has to come to an end and it will, when we all come to the undeniable conclusion that all life is sacred. There has to be a cessation to the cycle of violence and destruction that will, unchecked, diminish all of us.
For so long we have struggled and we've cried so many tears.
Took our knocks and often stumbled when faced with frightening fears.
It seems as if our simple words won't resonate at all
And humanity will pay the price when into hell we fall.
Enigmacat, 2002.
Last Updated:
August 18th, 2009.


text:
Please login first to complete purchase/ quotation request, view custom order reports, or create favorites list.
Don't have an account with us yet? Please set up an account to place order or obtain customer services.
LRB-EDA, a mixture of isomers, is used for modifying carboxy-containing biomolecules. Its fluorescence emission spectrum lies between those of tetramethylrhodamines and X-rhodamines, and it can be well excited by 568 nm line of the Ar-Kr mixed gas laser that is used in many confocal laser-scanning microscopes.


text:
Sandy Adams (R) @SandyAdams4FL07
Politwoops no longer follows this account.GREAT PHOTOS of @MittRomney and @AnnDRomney voting for real change in Belmont, Massachusetts today: http://t.co/IIFxQ0QH #RomneyRyan2012
An archive of the public statements deleted by U.S. politicians. Explore the tweets they would prefer you couldn't see.
If you aren't an elected official or running for office and feel your account is being tracked by mistake then please contact us.


text:
NEW CHAMPION..... The #48
"GOD BLESS OUR TROOPS,ESPECIALLY THE SNIPERS"[/[color=#FF4000]color]
Races, tracks, drivers and all the drama that comes along with it
michaeljohn wrote:ummmmmmmmmmmm did i say he was going to win??? i said he has a good shot if he makes it out of dega,
onerockindoc wrote: Jamo, as for your MOJO i saw it the other day on I-45 flying south for the winter.
racer1 wrote:Tony is 32 points behind the leaders so basically the #2, #48 and the #11 need to finish way back in the pack or crash out and tony needs to finish at least 10 points ahead of them for a few races but how likely is that? Even if Tony wins a race, if the #48 or the others finish close behind him it wont help him much.
This is why Gordon is out of it now, as he is so many points behind the front runners, even when he finishes in the top 5 he loses points as the leaders win or finish ahead of him so they all need to have lots of problems for him to get back into it and not likely for all the remaining races or even 3 or 4 of them? Anything could happen I guess as the crash-fest Talledega is coming up and after that race it may define things more--so guess we'll see?
HTower wrote:I want what you're smoking.
austin024 wrote:HTower wrote:I want what you're smoking.
Lol I don't smoke or drink, I'm actually a good kid
Users browsing this forum: No registered users and 7 guests


text:
For dogs with mild to moderate osteoarthritis. Contains Biacalin and Catechins, two plant-derived active ingredients, scientifically and clinically p Read More
This product is currently unavailable for purchase.
For dogs with mild to moderate osteoarthritis.
Contains Biacalin and Catechins, two plant-derived active ingredients, scientifically and clinically proven to be extremely safe and very effective. Addresses the underlying causes of joint deterioration and helps support correct metabolic balance. Provides a powerful antioxidant effect, five times greater than Vitamin E, to help protect cells and cartilage from oxidative damage.
Daily Dosage:
No loading dose.
Try it for 30 days. Money back guarantee.
- Brand: Flex RX
- Form: Tablets
- Type: Joint Health
- Ingredients: Biacalin,Catechins
- Size: 90 Count
Reviews (7)
"not much help"
I have a 12 year old pointer who is just starting to have problems. He has also been hit by a car and a motorcycle, separate times, before I got him, and he is starting to limp. He does not have many teeth left but is able to eat his hard dog food. But he refuses to eat these. He just snuffs his nose up in the air. He did eat them in the beginning a few times but I think that was because he didn't want the other dogs to get any. But most times he will not eat it, he will sometimes take it in his mouth and then spit it out. So I really don't know if they will work or not. I guess they need to make them more tasty for dogs. My other dog will spit it out as well. I'm now looking for something else. I just wasted money on two bottles of these.
"Try It!!"
"Having 5 senior dogs, almost everyone is on one joint product or another. I noticed a huge difference in Zoe's mobility after putting her on Flex Rx. Zoe was quite willing to take the tablet (I LOVED the ""no loading dose!)and the fact that it comes with a ""try it for 30 days! Money back guarantee"" makes it even better!!"
"sadly did not work"
"I tried this item hoping that it might help my 12 1/2 yr old sheltie Sadly she started to limp much worse. I was very didapointed.I used it for nearly 2 weeks. She has moderate arthritis.She did much better with the ""Promotion"" my vet reccomended.I bought 2 bottles of this product. Hopefully it will work better on other dogs. Disapointed in Waukesha. LLT"
"Amazing results!"
" My lab is 8 yrs old and no longer ""suffers"" from arthritis. Before the 1st week of a tablet a day she showed significant improvement. After 2 months she showed no signs of having arthritis. She does not like the taste of the pill though so, when I ran out I bought an alternate product that is a powder and supposed to be the same thing (by a different company). Within a week Abigail began limping again. This product is AMAZING! "
After using Phycox Soft Chews for our 13 year old Blue Healer (lost a rear leg to cancer), we tried FLEX RX as a replacement. After 2 weeks on the whole tablet, we tried 1/2 tablet (she is 32 lb) and saw a decline after a few days. We switched back to a whole tablet a day and she is doing well. This has proved to be an excellent replacement. We do recommend this product.
"Amazing product!"
I have used several different products on my Border Collie with few results. Flex Rx is the only product that has improved his joint problems. Thanks Flex Rx!
"mini doxie"
I give my mini doxie flex rx, i notice she now charges out of the kennel in the morning before she was also slow getting going in the AM. Seems like she always wants to play now as well. Good and bad. :)
You May Also Like
Free Leather Halter with purchase! Click for details.
$37.99 to $131.99
$38.99 to $133.99


text:
Northern Iowa v. Wis. Badgers
Published On: Sep 06 2012 11:59:43 AM CDT
Photos from Saturday's game at Camp Randall
What seemed like a prototypical early-season rout turned into a dogfight late in the fourth quarter as No. 12 Wisconsin barely held off Northern Iowa 26-21 in the season opener.
The views expressed are not those of this company or its affiliated companies. By posting your comments you agree to our Terms of Use.


text:
News Posts
Paleontologists Gain New Insight to "Telescoping" Crocodile Eyes
by AMNH on
Fossils of a 13-million-year-old extinct crocodilian suggest that South American and Indian species of crocodiles evolved separately to acquire protruding, "telescoped" eyes.
Research Shows Vital Links Between Lemurs and Fruit Trees
by AMNH on
A new study led by a Museum researcher has uncovered a close connection between the diversity of Madagascar's lemurs and the abundance of their food resources.
Bigger Brains Drove Evolution to Bigger Human Bodies
by AMNH on
New research by a Museum scientist suggests that humans became the large-brained, large-bodied animals we are today because of natural selection to increase brain size.
Frontiers Lecture: The Cosmic Web - Mysterious Architecture of the Universe
by AMNH on
J. Richard Gott discusses how ambitious telescope surveys are transforming astronomy, what the cosmic web says about the origins of the universe, and the next trillion years ahead.
Get to Know a Dino: Yutyrannus huali
by AMNH on
This smaller cousin of the iconic Tyrannosaurus rex was a fearsome predator covered in a shaggy coat of "proto-feathers."