There are many advantages to using gene immunization rather than protein immunization. For example, it is more effective at inducing cellular and humoral responses than protein. More importantly, it is safer.
By targeting only the desired epitope, this method of immunization avoids the induction of unwanted responses. A current example of an unwelcome response would be enhancing antibodies in HIV patients, which may promote infection. This, of course, needs to be avoided.
Gene immunization also minimizes the chance of the patient developing autoimmunity. Autoimmunity is the condition where the body mounts an immune response against its own cells and tissues. Obviously, this condition, which sometimes occurs with protein immunization is undesirable.
Furthermore, this method is safer than immunizing with a live or attenuated organism because the patient would not become infected with the organism -- for example, polio virus -- one is trying to immunize against. Even with today's technology, a small percentage of people contract polio from the vaccine. This would not happen if they are immunized with the specific CTL epitopes for this disease. Since the whole protein is not present, the patient would not contract the illness.
Genetic immunization is also more effective than protein immunization. In this approach, DNA enters a cell, replicates and produces protein which, in a sense, is similar to what a virus does. Simplistically, this tricks the immune system into believing that the cell is infected with a virus so that T-cells will recognize the cell, immediately divide and search for other cells expressing the same epitope. In short, gene immunization allows for a better and more efficient immune response.