Customization of generated Java class names

Hi,
I could not find any documentation on how to customize names of the generated
Java classes/types. In Castor, you can do it with a simple mapping, is it possible
with XMLBeans?
Thanks,
Marina

Hi, Steve,
thanks for your reply!
I have tried to add an xsdconfig file, but when I run the following command:
C:\Java\XMLBeans\xkit\bin\scomp -src . -srconly order.xsd
with the xsdconfig file in the current directory , nothing happens - the xsdconfig
file is ignored and Java files are generated in exactly same way as they were
without the xsdconfig file...
Here is the content of my xsdconfig file - it is very simple, for test purposes:
<xb:config xmlns:order="http://order"
xmlns:xb="http://www.bea.com/2002/09/xbean/config">
<xb:namespace uri="http://order">
<xb:package>neptune.neptunelib</xb:package>
</xb:namespace>
<xb:qname name="order:order" javaname="OrderDO"/>
<xb:qname name="order:shippingID" javaname="ShippingInfoDO"/>
<xb:qname name="order:addressInfo" javaname="AddressInfoDO"/>
<xb:qname name="order:destination" javaname="DestinationDO"/>
</xb:config>
I'm not sure about the namespace part - currently, my order.xsd has no namespace
or URI assigned. I asked BEA's customer support about this and the answer was:
'use anything, the URI does not matter'. Well, I did use "anything" but I'm not
sure this is correct...
Thanks,
Marina
"Steve Traut" <[email protected]> wrote:
Marina -- You can do this by creating an xsdconfig file and including
it
when you compile your XSD files. The xsdconfig file maps schema types
to
generated Java type names.
If you're using WebLogic Workshop, the following topic should give you
what
you need:
http://edocs.bea.com/workshop/docs81/doc/en/workshop/guide/howdoi/howGuideXMLBeansTypeNaming.html
If you're using Ant, I can provide a topic that will be available soon.
Please send email if you'd like information on the Ant task.
Steve
"Marina Popova" <[email protected]> wrote in message
news:3f8c468c$[email protected]..
Hi,
I could not find any documentation on how to customize names of thegenerated
Java classes/types. In Castor, you can do it with a simple mapping,is it
possible
with XMLBeans?
Thanks,
Marina

Similar Messages

  • JAXB to generate java classes for XSD.

    Hi
    I have a XSD, which is importing other couple of xsds in it, tried to generate java classes using xjc, it is throwing error.
    C:\vittal\Project\received\development-1\da_xsd>xjc -p com daAuthoring.xsd
    parsing a schema...
    [ERROR] Property "Alt" is already defined. Use <jaxb:property> to resolve thi
    s conflict.
      line 42 of file:/C:/vittal/Project/received/development-1/da_xsd/commonElement
    s.xsd
    [ERROR] The following location is relevant to the above error
      line 2205 of file:/C:/vittal/Project/received/development-1/da_xsd/daCommonEle
    ments.xsd
    Failed to parse a schema.Please let me know how to fix this issue.

    Thanks for information,
    I do understand xml well, and having basic knowledge on XSD.
    1. can i generate a java classes for a xsd which is including other XSDs.
    2. how to overwrite the issue, using annotation, point me to a location where i will get more information, that will be great help.
    here is my xsd.
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/" xmlns:dctm="http://www.documentum.com" elementFormDefault="qualified">
         <xs:import namespace="http://dita.oasis-open.org/architecture/2005/" schemaLocation="ditaarch.xsd"/>
         <xs:import namespace="http://www.documentum.com" schemaLocation="dctmAttrs.ent.xsd"/>
         <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
         <xs:group name="alt">
              <xs:sequence>
                   <xs:element ref="alt"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="desc">
              <xs:sequence>
                   <xs:element ref="desc"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="title">
              <xs:sequence>
                   <xs:element ref="title"/>
              </xs:sequence>
         </xs:group>
         <!-- Elements in tblDecl.mod -->
         <xs:group name="colspec">
              <xs:sequence>
                   <xs:element ref="colspec"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="entry">
              <xs:sequence>
                   <xs:element ref="entry"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="row">
              <xs:sequence>
                   <xs:element ref="row"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="tbody">
              <xs:sequence>
                   <xs:element ref="tbody"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="tgroup">
              <xs:sequence>
                   <xs:element ref="tgroup"/>
              </xs:sequence>
         </xs:group>
         <xs:group name="thead">
              <xs:sequence>
                   <xs:element ref="thead"/>
              </xs:sequence>
         </xs:group>
    </xs:schema>

  • JAXB problem generating java classes

    I'm doing some integration and have received a schema from the vendor the other day. When I try to generate java classes with the jaxb compiler I get this output
    parsing a schema...
    [ERROR] Property "Value" is already defined.
      line 14 of jar:file:/C:/win32app/Java/jdk6/lib/tools.jar!/com/sun/xml/internal/xsom/impl/parser/datatypes.xsd
    [ERROR] The following location is relevant to the above error
      line 384 of file:/C:/code/sca-ecr.xsd
    Failed to parse a schema.
        <xsd:complexType name="options">
            <xsd:sequence>
                <xsd:element name="option" maxOccurs="unbounded">
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:string">
    (Line 384)                  <xsd:attribute name="value" type="xsd:string"/>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>So, googling about this I came across these to articles that almost describes my problem.
    http://weblogs.java.net/blog/kohsuke/archive/2005/05/compiling_mathm_1.html
    https://jaxb.dev.java.net/guide/Dealing_with_errors.htmlAdding the this code did not help. Downloading JAXB 2.1.4 did not help, adding the -extension parameter still same result.
            <xsd:annotation>
              <xsd:appinfo>           
                <jaxb:property name="someAttribute" />
              </xsd:appinfo>
            </xsd:annotation>      Why is jaxb failing ? Could it be that and attribute is not allowed to be called "value" ?
    Any answers will do
    regards abq

    Well, after hours of digging I found a solution which actually was right in front of me the whole time.
    This is how I edited the schema.
        <xsd:complexType name="options">
            <xsd:sequence>
                <xsd:element name="option" maxOccurs="unbounded" >
                    <xsd:complexType>
                        <xsd:simpleContent>
                            <xsd:extension base="xsd:string">
                               <xsd:attribute name="value" type="xsd:string" >
                                  <xsd:annotation><xsd:appinfo>
                                    <jaxb:property name="realValue" />
                                  </xsd:appinfo></xsd:annotation>
                                 </xsd:attribute>
                            </xsd:extension>
                        </xsd:simpleContent>
                    </xsd:complexType>
                </xsd:element>
            </xsd:sequence>
        </xsd:complexType>Before, I placed the <xsd:annotation> tag efter the first line but inside the <xsd:attribute> made much better if you would like it to work.
    When marshling an @XmlRoot object will produce valid xml code. So even though that the server have a different xml schema, they will be able to talk to each other.
    abq

  • Error when generating Java Classes from XSD

    I'm getting the following error when using oragc to generate Java classes from a schema:
    Error: Schema Class Generator failed to generate classes. oracle.xml.parser.schema.XSDException: Invalid facet 'pattern' in element 'simpleType'
    Any thoughts?
    Here's the part where it is getting the error:
    +111 <!-- Timestamp Type - Timezone portion is required and fractional seconds are prohibited -->
    +112 <xsd:simpleType name="TimestampType">
    +113 <xsd:annotation>
    +114 <xsd:documentation>Base type for a date and time stamp</xsd:documentation>
    +115 </xsd:annotation>
    +116 <xsd:restriction base="xsd:dateTime">
    +117 <xsd:pattern value="[1-9][0-9]{3}\-.+T[^\.]+(Z|[\+\-].+)" />
    +118 </xsd:restriction>
    +119 </xsd:simpleType>

    I would recommend using JAXB instead of the Oracle class generator. This will give a standards based object-to-XML platform.
    Oracle provides two JAXB implementations: one in the TopLink product, and the other in the XDK.
    For an example of using TopLink JAXB see:
    http://www.oracle.com/technology/products/ias/toplink/technical/tips/jaxb/index.htm
    TopLink also provides the ability to map existing Java objects to an existing XML Schema, for an example of this see:
    http://www.oracle.com/technology/products/ias/toplink/technical/tips/ox/index.htm
    -Blaise

  • [svn:fx-trunk] 5121: Fixing generated SymbolClass class names to take packages into account during FXG - SWF conversion.

    Revision: 5121
    Author: [email protected]
    Date: 2009-03-01 19:08:01 -0800 (Sun, 01 Mar 2009)
    Log Message:
    Fixing generated SymbolClass class names to take packages into account during FXG -> SWF conversion.
    QE: No
    Doc: No
    Checkintests: Pass
    Reviewer: Discussed with Corey
    Modified Paths:
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/fxg/TextFXGGraphics.java

  • Errors generating Java classes from XML schema

    I received the following errors when generating Java classes from the schema located at: http://imsproject.org/xsd/ims_qti_rootv1p1.xsd and http://imsproject.org/xsd/ims_xml.xsd
    XML Spy v4 claims that the schema is well-formed and valid. Could this be a problem with the class generators, or is XML Spy not telling the truth?
    Thanks.
    D:\IMS_QTI\Java>java -classpath .;lib/xmlparserv2.jar;lib/xschema.jar;lib/classgen.jar oracle.xml.classgen.oracg -schema ims_qti_rootv1p1.xs
    d -outputDir src\com\icld\qti -package com.icld.qti -comment
    file:/D:/IMS_QTI/Java/ims_qti_rootv1p1.xsd<Line 235, Column 21>: XSD-2209: (Error) Duplicated definition for: 'attr.view'
    file:/D:/IMS_QTI/Java/ims_qti_rootv1p1.xsd<Line 303, Column 21>: XSD-2209: (Error) Duplicated definition for: 'grp.labels'
    file:/D:/IMS_QTI/Java/ims_qti_rootv1p1.xsd<Line 1834, Column -12236>: XSD-2209: (Error) Duplicated definition for: 'qtimetadatafield'
    file:/D:/IMS_QTI/Java/ims_qti_rootv1p1.xsd<Line 1834, Column -9642>: XSD-2209: (Error) Duplicated definition for: 'typeofsolutionType'
    file:/D:/IMS_QTI/Java/ims_qti_rootv1p1.xsd<Line 2252, Column -3019>: XSD-2026: (Error) Invalid attribute 'use' in element 'attribute'
    Error: Schema Class Generator failed to generate classes. oracle.xml.parser.schema.XSDException: Duplicated definition for: 'attr.view'

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Jinyu Wang ([email protected]):
    Which version are you using? I can't reproduce the error with 9.0.2B version.<HR></BLOCKQUOTE>
    Thanks for having a look at the problem. I am using the 9.0.2.0B version with Java 2 Standard Edition Build 1.3.1-b24. The classgen -version option returns 9.0.2.0b-beta - and xmlparserv2.jar and xschema.jar are from the same distribution. Running the corresponding DTD from the same source work fine - I'm just havinf this problem with the XSD. Anything else I should look at?

  • How to omit xmlns from generated Java classes

    Hi,
    I'm using JAXB and xjc to generate Java classes from xsd fils. I've noticed that when marshalling these Java classes to XML string, there are few xmlns attributes that (as far as I concern :-))
    "waste" space on the generated xml (space is critical resource in our application). Is there a way to order the Marashaller to omit these xmlns attributes from the generated files?
    I tried to edit the generated xml string. I removed the xmlns attributes, but unmarshall it back to Java objects failed...
    Thanks for any help,
    Barak.

    If the xmlns is specified in the xsd, it is also required in the xml. If you do not want it, however you can remove it from your xsd and then generate your xml

  • Java class names which contain unicode characters

    I need to create, compile and load java classes which have class names that contain unicode characters.
    I am using Win2k but will neet to support unix* in future.
    When I try to create a fooXbar.jar where X is a unicode character which is not ascii I get an error when creating the file.
    My question is: how do I map java class names and package names which contain non ascii characters into
    names that the files systems will like AND that the java VM will use when trying to load .class file from the class path.
    for example what would the .java and .class file be for the following class?
    class \u6587\u66f8 {

    You could make names for .java and .class that is understandable by the filesystem. E.g. you could prepend with % and then digits for the unicode character. The problem is then how to compile the class, and how to load the class.
    You can load the class with a custom classloader, which will translate the unicode class name to the escaped file name (using %).
    The problem is then reduced to how you can compile your code (you have to map the file name to the class name somehow). I think it can be done, but I don't know the solution to that.
    Alternatively you can use meaningful names for the classes, and then make an obfuscator that can change the bytecodes so the classnames are changed to some obscure unicode names. Perhaps there is already obfuscators out there you can use that will use unicode characters.

  • Why does Flash generate invalid class names for library items?

    I imported a bunch of bitmaps (PNGs).  The library symbol names all included the full file name and its extension.  When I check "export for actionscript" it generates a class name based on the symbol name, and it includes the ".png", even though that's invalid in a class name.
    When I select multiple bitmaps and choose properties and export for actionscript, it has a note saying that classnames will be automatically generated for all items, but it does the same thing... including the ".png" in all the class names.  Is this a problem?  Wouldn't it save time if Flash would automatically strip the file extension from the instance name of bitmap library symbols when generating class names?

    Thank you Nipun.  That is exactly the behavior I would expect, and I can confirm that in the trial of Flash CC it generates valid class names by removing the file extension.  For example, a file named "3ball.test.png" will receive an auto-generated class name of "_3ball_test", so it really does ensure the class name is valid (meeting AS3 class name syntax)
    kglad, what I'm saying is that an image file name like "ball.png" is not a valid "class name", because it contains a period, which is reserved as a package delimiter.  I know the runtime can handle it as a valid "fully-qualified class name", but it's misleading because it's actually creating a class named "png" in package "ball", BUT it's understood that the auto-generated name is not supposed to be specifying any package, hence the misleading specification.  The class would have to be instantiated like this: "import ball.png; var bd:BitmapData = new png();" or "import ball.*; var bd:BitmapData = new png();"  You would also then have to import every single class individually and always use their fully qualified names, because you'd technically have a bunch of classes all named "png" inside a hundred different packages.  It's just not acceptable.
    The other problem that occurred in CS6 is if you loaded a bunch of files whose names started with numbers, then when you select them all, choose properties, and use the batch properties window to export them for actionscript, I noticed that such images would be auto-assigned generic names like "Class4" as it would realize the default auto-generated class name would be invalid.  This problem has been fixed beautifully in Flash CC.
    Nipun, it would actually be very helpful to have a little more control over the class naming conventions.  For example, if I wanted all my BitmapData classes to exist in an "images" folder or package, it would be helpful if in the batch properties window I could specify a package name for all the auto-generated class names.  When importing hundreds of images, it's very tedius to have to edit them individually and I don't always have time to write a JSFL script.  There's room in that window to add a text field for a package name.  Thanks!

  • About generating Java classes from XSD Schema ???

    I need a powerfull tool to generate Java classes from XML Schema. I want that generated classes to have the option to validate XML(to be JAXP1.2 compliant).
    I used XML Spy 5.4 but the generated classes can't validate an XML file.
    Can you help me with other tools that:
    - generate Java classes from XSD
    - generate sample XML from XSD
    - are JAXP1.2 compliant(validate a XML file with a schema)
    Thanks.

    You can also use Castor: http://www.castor.org
    It generates classes from XML Schemas and enables data
    binding without writing any line of a fuckin SAX
    parser :-)I evaluated Castor and JAXB and while JAXB isn't perfect, it's got some things over Castor. Castor almost looks abandonded when I go to the site. The documentation just sort of trails off.

  • Java class name

    The java class name is Dummy.class, it contains:
                ObjectStreamClass myObj = ObjectStreamClass.lookup(Class.forName("Dummy"));
                serialVersionUID = myObj.getSerialVersionUID();
                System.out.println("serialVersionUID: " + serialVersionUID);Now how to replace the "Dummy" string with a method returning the class name?
    OK!

    String classname = this.getClass().getName();
    Good luck!

  • JAXB - Generated Java Classes error

    Hi,
    I am having a problem generating java classes given the follow snippet from a DTD. The ImplemenationData class that is generated does not include ImplementationPlatform and ProgramParameters as attributes. Instead, it includes these two elements in the PredicatedLists and then generates a content exception when those elements are not found. Can anyone tell me why these two elements are not being generated as attributes with the associated setter/getter methods to go with them? The ExeOptions, DllOptions and ExternalOptions are being generated properly and included in the PredicatedLists as they should be. Any help would be greatly appreciated.
    <!ELEMENT ImplementationPlatform           (#PCDATA)>
    <!ELEMENT ProgramParameters                (#PCDATA)>
    <!ELEMENT ImplementationData
         (ImplementationPlatform,
         ProgramParameters,
         (ExeOptions
         |DllOptions
         |ExternalOptions))>
    <!ELEMENT ExeOptions
         (PathAndFileName,
         WorkingDirectoryName?,
         Environment?,
         InheritEnvironment,
         StartInForeGround?,
         AutomaticClose?,
         WindowStyle?,
         RunInXTerm?)>
    <!ELEMENT DllOptions
         (PathAndFileName,
         EntryPointName,
         ExecuteFenced?,
         KeepLoaded?)>
    <!ELEMENT ExternalOptions
         (ServiceName,
         ServiceType,
         InvocationType,
         ExecutableName,
         ExecutableType,
         IsLocalUser,
         IsSecurityRoutineCall,
         CodePage?,
         TimeoutPeriod,
         TimeoutInterval?,
         IsMappingRoutineCall,
         MappingType?,
         ForwardMappingFormat?,
         ForwardMappingParameters?,
         BackwardMappingFormat?,
         BackwardMappingParameters?)>

    Just a thumb suck but, have you tried placing the defintitions after the declarations instead of before.
    Dave

  • Generate Java class from Oracle Type defined in Package w/ JPublisher

    I was wondering if its possible to generate a Java class for an Oracle Type defined in a Package? I know passing the package name to JPublisher (SQL <package_name>) causes all Oracle Types in the Package to have a Java class generated for them but I'd like to be able to do this for an individual Type defined in a Package (something like SQL <package_name>.<type_name>).
    Thanks for any information you can give me.

    Hi Marinel,
    The support for XSD import is limited on 10.1.2. If you can, you should consider moving to the 10.1.3 preview as the support for document style web services has improved. The other option will be to inline the schema in your WSDL.
    Eric.

  • Deploy java stored proc. publishes java class names without package name

    Hi to All,
    Using JDevStudio 10132 I've created a 'Loadjava and Java Stored Procedure' deployment profile for my project. I've added my static method to the deplyment profile, but it generates script without java packege name, only pure class name.
    For example it executes: ...
    CREATE OR REPLACE PROCEDURE Procedure1(p1 IN VARCHAR2) AUTHID CURRENT_USER AS LANGUAGE JAVA NAME 'CryptoHelper.Procedure1(java.lang.String)';
    instead of
    CREATE OR REPLACE PROCEDURE Procedure1(p1 IN VARCHAR2) AUTHID CURRENT_USER AS LANGUAGE JAVA NAME 'mypackege.xxx.yyy.CryptoHelper.Procedure1(java.lang.String)';
    The CryproHelper class is definitely in mypackage.xxx.yyy package and JDeveloper Application Navigator shows correctly it.
    Any ideas?
    thx fo answers

    Hi,
    I've just been doing this on 10133 and found exactly the same thing. It's an easy fix to edit the package body - but it's rather annoying to have to manually do something that should just work.
    Steve
    *Hand editing the .deploy file to add in the package name works.
    Message was edited by:
    spilgrim

  • Error when generating java classes from object types

    Hi,
    I'm using JDeveloper version 10.1.3.0.2
    I created an object type in the database, the definition is:
    TYPE domain_cls IS OBJECT (
    domain_idx           NUMBER(3)
    ) NOT INSTANTIABLE NOT FINAL
    I tried to create a java class for this object using JDeveloper, by using generate java menu item.
    I got the following error:
    oracle.jpub.JPubException: Warning: Cannot determine what kind of type is OBJMOI. DOMAIN_CLS. The following error occurred: ORA-06550: line 1, column 13:
    PLS-00103: Encountered the symbol "SYS" when expecting one of the following:
    := . ( @ % ;
    The symbol ":=" was substituted for "SYS" to continue.
    at oracle.jpub.sqlrefl.SqlReflector.addSqlType(SqlReflector.java:519)
    at oracle.jpub.sqlrefl.SqlReflector.addSqlUserType(SqlReflector.java:707)
    at oracle.jpub.publish.Publisher.addTypeOrPackage(Publisher.java:209)
    at oracle.jpub.publish.IntypeParser.TypeDeclaration(IntypeParser.java:238)
    at oracle.jpub.publish.IntypeParser.CompilationUnit(IntypeParser.java:75)
    at oracle.jpub.Doit.main(Doit.java:257)
    at oracle.jpub.Doit.main(Doit.java:102)
    at oracle.jdevimpl.cm.dt.jpub.JPubModel.publish(JPubModel.java:1047)
    at oracle.jdevimpl.wizard.jpub.JPubPanel.publish(JPubPanel.java:516)
    at oracle.jdevimpl.cm.dt.jpub.JPubAddin._doJPub(JPubAddin.java:174)
    at oracle.jdevimpl.cm.dt.jpub.JPubAddin.handleEvent(JPubAddin.java:81)
    at oracle.ide.IdeAction.performAction(IdeAction.java:661)
    at oracle.ide.IdeAction$2.run(IdeAction.java:889)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    any body can hlep in that please

    I would recommend using JAXB instead of the Oracle class generator. This will give a standards based object-to-XML platform.
    Oracle provides two JAXB implementations: one in the TopLink product, and the other in the XDK.
    For an example of using TopLink JAXB see:
    http://www.oracle.com/technology/products/ias/toplink/technical/tips/jaxb/index.htm
    TopLink also provides the ability to map existing Java objects to an existing XML Schema, for an example of this see:
    http://www.oracle.com/technology/products/ias/toplink/technical/tips/ox/index.htm
    -Blaise

Maybe you are looking for

  • Macbook pro 15 inch (late 2011) bought 10 January 2O12. Beeps constantly 3 times.

    Hello, 3 months later it suddenly started beeping when I was watching a HD video. It beeped 3 times...3times...3times... and the indicator lighted up with the beeps. I turned it off and I started it up again and he was working fine. I took it too the

  • Can no longer mount iDisk with WebDAV

    Since last night I can no longer sync my iDisk, or mount any iDisk form other users. I've read the support answer that if you get "Last sync failed" with the iDisk sync, you should run "fix permissions" and reboot. http://docs.info.apple.com/article.

  • Mac Mini running a second monitor

    Does anyone know the possibilites of running a second monitor off the Mac Mini (I am currently running a Mac Mini Dual Core)? I was just reading about this USB to SVGA adapter that was in works by this company called Tritton (http://www.trittontechno

  • Attn: Prashant (XSLT Mapping)

    Hi Prashant,             I am applying xslt mapping in my scenario. The required format is: <BatchReceiptPw <b>xmlns="http://AltInn.no/webservices/"</b> >       <enterpriseSystemId>int</enterpriseSystemId>       <batchId>string</batchId>       <passw

  • Using backreferences in String.replaceAll()

    hi, i have a string (retrieved from a JTextField), that i'd like to run through a regex Pattern, but first I'd need to escape ANY non-alphanumeric characters. i thought i could use the String class' replaceAll method, to replace each matching charact